2016-06-21 53 views

回答

1

FMDB中的next方法僅僅是圍繞sqlite3_step函數的封裝。你可能被用來分開「提前記錄集的遊標」和你在其他環境中看到的「EOF測試」的函數,但這只是SQLite如何去做的。

因此,不幸的是,不,SQLite並沒有爲「是否有另一行」和「檢索下一行」確實有單獨的函數。這是由FMDB的next調用的一個功能,sqlite3_step,可以用於兩個目的。有關SQLite函數的完整列表,請參見SQLite C interface API

也許FMDB使用一個名爲FMRecordSet的類會引起這種混淆,但我們必須記住它實際上只是SQLite C API的一個簡單包裝器。它僅限於該API中固有的相同功能。

+0

在android中有什麼'遊標'嗎?我真的找不到它,請直接告訴我,如果你知道這件事,它在我當前的項目中非常重要,因爲我正在將一個android應用程序轉換爲ios,如果我找不到解決方法,它會增加很多複雜性,謝謝! –

+0

我明白你在找什麼(我承認我猜你是來自微軟的ADO/DAO世界,因爲他們是這樣做的),但這不是標準SQLite API的一部分,因此不屬於FMDB的SQLite API薄包裝器。 – Rob

+0

我知道這就是你可以用來遍歷記錄集的方式,但公平地說,SQLite方法也可以很好地工作。這只是解決同樣問題的一種稍微不同的方式。 – Rob