2017-07-14 46 views
-1

如果不是,我該怎麼做?我無法確定它是否存在,以及我迄今爲止在嘗試自動增量行ID方面嘗試過的所有內容都無法正常工作。Python - sqlite默認創建一個整數ID列嗎?

難道有人指向我在這方面的一個好資源的方向,或給我一個快速提示?我沒有運氣,任何幫助表示感謝,謝謝!

+0

在[常見問題](https://sqlite.org/faq.html#q1)中,他們舉例說明了如何做到這一點 – roganjosh

回答

1

SQLite表具有自動增量ROWID,除非您在創建表時另行指定。

SQLite Documentation

SQLite中,表中的行通常具有64位帶符號整數ROWID這是在同一個表中的所有行中是唯一的。 (沒有ROWID表是例外)。

您可以使用特殊列名稱ROWID,ROWID或OID之一訪問SQLite表的ROWID。除非您聲明普通表列使用其中一個特殊名稱,那麼使用該名稱將聲明的列引用到內部ROWID。

如果一個表包含一個INTEGER PRIMARY KEY類型的列,那麼該列將成爲ROWID的別名。然後,您可以使用四種不同名稱中的任何一種來訪問ROWID,即上述的原始三個名稱或賦予INTEGER PRIMARY KEY列的名稱。所有這些名稱都是別名的別名,在任何情況下都可以很好地工作。