时间:2010-07-25 18:23:03

标签: mysql sqlite

6 个答案:

答案 0 :(得分:536)

答案 1 :(得分:270)

PRAGMA table_info([tablename]);

答案 2 :(得分:109)

答案 3 :(得分:51)

答案 4 :(得分:6)

为了防止人们被其他答案的一些评论误导:

  1. 如果.schemaquery from sqlite_master未提供任何输出,则表示不存在tablename,例如这可能也是由;.schema,...结尾的.tables分号引起的,或者只是因为该表确实不存在。 .schema不起作用是不太可能的,然后应该在sqlite项目中提交错误报告。
  2.   

    ... .schema只能在命令行中使用;上述命令>可以通过库(Python,C#等)作为查询运行。 - Mark Rushakoff 2010年7月25日21:09

    1. '只能在命令行中使用'可能误导人。几乎任何(可能是每种?)编程语言都可以调用其他程序/命令。因此引用的评论是不吉利的,因为调用另一个程序(在这种情况下为sqlite)比支持每个程序wrapper / library的语言更有可能得到支持(不仅如此)由于大量程序的本质,它很容易出现不完整性,但也是反作用single-source principle,使maintenance复杂化,进一步加剧了世界数据的混乱。

答案 5 :(得分:1)

如果 ,您正在使用图形工具。它在表名旁边显示了架构。如果是 用于Sqlite的数据库浏览器 ,请单击以打开数据库(右上角),导航并打开数据库,您将在表中看到填充为以下信息:在下面。

enter image description here

  

右键单击记录/表名,单击复制创建语句,然后就可以了。

希望它可以帮助一些未能使用命令行的初学者。