回答:
SQLiteのコマンドラインユーティリティを持っている.schema TABLENAME
あなたのショーは、ステートメントを作成するコマンドを。
PRAGMA table_info([tablename]);
.schema tablename
、私よりもMySQLの記述に相当します。
PRAGMA table_info [table]
基本的な情報しか含まれていないため、十分ではありません(たとえば、列が何らかのフィールドであるかどうかは表示されません)。」
テーブルの生成に使用されるSQLを探していますか?そのために、あなたはsqlite_master
テーブルをクエリすることができます:
sqlite> CREATE TABLE foo (bar INT, quux TEXT);
sqlite> SELECT * FROM sqlite_master;
table|foo|foo|2|CREATE TABLE foo (bar INT, quux TEXT)
sqlite> SELECT sql FROM sqlite_master WHERE name = 'foo';
CREATE TABLE foo (bar INT, quux TEXT)
.schema foo
か?
.schema
コマンドラインからのみ使用できます。上記のコマンドは、ライブラリ(Python、C#など)を介してクエリとして実行できます。
他の回答へのコメントの一部によって人々が誤解を招くことを防ぐために:
.schema
またはquery from sqlite_master
任意の出力を与えていない、それが存在しないことを示すtablename
例えば、これもによって引き起こされる可能性;
のための末尾にセミコロン.schema
、 .tables
テーブルが実際に存在していない...それともので、。それ.schema
だけではうまくいかない可能性は非常に低いため、sqliteプロジェクトでバグレポートを提出する必要があります。... .schemaはコマンドラインからのみ使用できます。上記のコマンドは、ライブラリ(Python、C#など)を介してクエリとして実行できます。– Mark Rushakoff、2010年7月25日21:09
sqlite
、別のプログラムの呼び出しは、言語がすべてのプログラムにwrapper
/ library
を提供するよりもサポートされる可能性が高くなります(そこにあるプログラムの大部分の性質によって不完全になる傾向があるだけではありません)だけでなく、反対作用single-source principle
、複雑化maintenance
、世界のデータの混乱を助長します)。