概要 :このチュートリアルでは、SQLiteでテーブルの構造を表示するさまざまな方法について学習します。
SQLiteコマンドラインシェルプログラムを介してテーブルの構造を取得する
SQLiteコマンドラインシェルプログラムを介してテーブルの構造を見つけるには、次の手順に従います。
まず、SQLiteコマンドラインシェルプログラムを介してデータベースに接続します。
sqlite3 c:\sqlite\db\chinook.dbCode language: SQL (Structured Query Language) (sql) 次に、次のコマンドを発行します。
.schema table_nameCode language: SQL (Structured Query Language) (sql)
たとえば、次のコマンドは、albumsを作成したステートメントを示しています。 テーブル:
.schema albumsCode language: SQL (Structured Query Language) (sql)
セミコロンがないことに注意してください(; )テーブル名の後。セミコロンを追加した場合(; )、.schema albums;を検討します テーブル名として、テーブルがalbums;であるため、何も返しません。 存在しません。
出力は次のとおりです:
CREATE TABLE IF NOT EXISTS "albums"
(
[AlbumId] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
[Title] NVARCHAR(160) NOT NULL,
[ArtistId] INTEGER NOT NULL,
FOREIGN KEY ([ArtistId]) REFERENCES "artists" ([ArtistId])
ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE INDEX [IFK_AlbumArtistId] ON "albums" ([ArtistId]);Code language: SQL (Structured Query Language) (sql)
テーブルの構造を表示する別の方法は、PRAGMAを使用することです。 指図。これを行うには、次のコマンドを使用して出力をフォーマットします。
.header on
.mode columnCode language: SQL (Structured Query Language) (sql)
そして、PRAGMAを使用します 次のようにコマンドを実行します:
pragma table_info('albums');Code language: JavaScript (javascript) 次の図は出力を示しています:
cid name type notnull dflt_value pk
--- -------- ------------- ------- ---------- --
0 AlbumId INTEGER 1 1
1 Title NVARCHAR(160) 1 0
2 ArtistId INTEGER 1 0 SQLステートメントを使用してテーブルの構造を取得する
sqlite_schemaからクエリを実行すると、テーブルの構造を見つけることができます。 次のような表:
SELECT sql
FROM sqlite_schema
WHERE name = 'albums';Code language: SQL (Structured Query Language) (sql) 出力は次のとおりです:
sql
------------
CREATE TABLE "albums"
(
[AlbumId] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
[Title] NVARCHAR(160) NOT NULL,
[ArtistId] INTEGER NOT NULL,
FOREIGN KEY ([ArtistId]) REFERENCES "artists" ([ArtistId])
ON DELETE NO ACTION ON UPDATE NO ACTION
)
Code language: SQL (Structured Query Language) (sql) このチュートリアルでは、コマンドラインシェルプログラムまたはSQLステートメントを使用してSQLiteでテーブルの構造を表示する方法を学習しました。