如果您在任何 sqlite 数据库中有多个表,如何获取它们是否具有自动增量主键的信息?
例如,我已经知道您可以通过简单地查询来获取有关表列的一些信息:pragma table_info(tablename_in_here)
动态获取自动增量列比在源代码中使用布尔值设置每个相应的模型要好得多。
编辑:
让我以这张表为例:
CREATE TABLE "test" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
"name" TEXT NOT NULL
)
这是执行后的结果表pragma table_info("test")
cid | name | type | notnull | dflt_value | pk
0 | id | INTEGER | 1 | null | 1
1 | name | TEXT | 1 | null | 0
如您所见,没有关于该id
列是否为自动增量的信息
Edit2:
我正在寻找一个直接通过语句涉及 sqlite 的解决方案。不能使用终端中的命令以某种方式从内部解析所需信息的
特殊情况。它们在不允许您以编程方式在终端中执行命令的情况下不起作用。就像在 Android 应用程序中一样。sqlite3