Python - sqlite默认是否创建一个整数ID列?

时间:2017-07-14 20:03:30

标签: python sql sqlite

如果没有,我该怎么做?我无法确定它是否存在,而且到目前为止我在实现自动增量行ID时所尝试的一切都没有用。

有人能指出我对这方面的良好资源的方向,还是给我一个快速提示?我没有运气,感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:1)

SQLite表具有自动增量ROWID,除非您在创建表时另行指定。

来自SQLite Documentation

  

在SQLite中,表行通常具有64位有符号整数ROWID,它在同一个表中的所有行中都是唯一的。 (没有ROWID表是个例外。)

     

您可以使用特殊列名称ROWID, ROWID 或OID之一访问SQLite表的ROWID。除非您声明普通表列使用其中一个特殊名称,否则使用该名称将引用声明的列而不是内部ROWID。

     

如果表包含INTEGER PRIMARY KEY类型的列,则该列将成为ROWID的别名。然后,您可以使用四个不同的名称中的任何一个来访问ROWID,上面描述的原始三个名称或给予INTEGER PRIMARY KEY列的名称。所有这些名称都是彼此的别名,在任何情况下都同样有效。