我刚刚开始学习SQLite . 能够看到表的详细信息会很高兴,比如MySQL的 DESCRIBE [table] . PRAGMA table_info [table] isn 't good enough, as it only has basic information (for example, it doesn' t显示列是否是某种类型的字段) . SQLite有办法做到这一点吗?
... .schema只能在命令行中使用;上面的命令>可以通过库(Python,C#等)作为查询运行 . - Mark Rushakoff 2010年7月25日21:09
'can only be used from a command line'可能误导人 . 几乎任何(可能是每种?)编程语言都可以调用其他程序/命令 . 因此引用的评论是不吉利的,因为调用另一个程序,在这种情况下 sqlite ,更有可能得到支持,而不是语言为每个程序提供 wrapper / library (这不仅仅是因为大众的性质而不完整那里的程序,但也是反作用 single-source principle ,使世界数据的混乱更加复杂化 .
5 回答
SQLite command line utility有一个
.schema TABLENAME
命令,显示create语句 .您在寻找用于生成表的SQL吗?为此,你可以query the sqlite_master table:
要查看所有表格:
要查看特定表格:
为了防止人们被其他答案的一些评论误导:
.schema
或query from sqlite_master
未给出任何输出,则表示不存在tablename
,例如这也可能是由.schema
,.tables
,...结尾的;
分号造成的,或者只是因为该表确实不存在 ..schema
只是不起作用是不太可能的,然后应该在sqlite项目中提交错误报告 .sqlite
,更有可能得到支持,而不是语言为每个程序提供wrapper
/library
(这不仅仅是因为大众的性质而不完整那里的程序,但也是反作用single-source principle
,使世界数据的混乱更加复杂化 .(作为答案,未作出评论但尚未发表评论 . )