0
假設我在sqlite數據庫中創建5個條目。SQLite,不想獲得最大_id,我想獲得「下一個」_id
_id | Name
1 Tom
2 Oskar
3 Matt
4 Mike
5 Ed
如果我刪除數字4和5,我只有1-3。然後我做一個max _id查詢,然後我得到數字3.但是,當然我想要下一個自動遞增_id。在這個例子中,獲得數字「6」的方法是什麼?
假設我在sqlite數據庫中創建5個條目。SQLite,不想獲得最大_id,我想獲得「下一個」_id
_id | Name
1 Tom
2 Oskar
3 Matt
4 Mike
5 Ed
如果我刪除數字4和5,我只有1-3。然後我做一個max _id查詢,然後我得到數字3.但是,當然我想要下一個自動遞增_id。在這個例子中,獲得數字「6」的方法是什麼?
如果您_id
列的類型爲INTEGER PRIMARY KEY AUTOINCREMENT
,你可以閱讀從sqlite_sequence
表中的當前序列值,從而確定下一個:
SELECT seq + 1 FROM main.sqlite_sequence WHERE name = 'mytablename'
那麼你爲什麼不讓它自動遞增。那麼你不必擔心它。 – Scorpion
你可能想閱讀[this](http://www.sqlite.org/autoinc.html)和[this](http://stackoverflow.com/questions/2127138/how-to-retrieve-the-last -autoincremented-id-from-a-sqlite-table)你的答案的鏈接 – Sujay
這是自動增量。但是,我有一個需要知道下一個ID的程序,因爲當我使用max id時,我的程序被拋出軌道。 – EGHDK