Résumé :dans ce didacticiel, vous découvrirez différentes manières d'afficher la structure d'une table dans SQLite.
Obtenir la structure d'une table via le programme shell en ligne de commande SQLite
Pour connaître la structure d'une table via le programme shell en ligne de commande SQLite, procédez comme suit :
Tout d'abord, connectez-vous à une base de données via le programme shell en ligne de commande SQLite :
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
Ensuite, lancez la commande suivante :
.schema table_name
Code language: SQL (Structured Query Language) (sql)
Par exemple, la commande suivante affiche l'instruction qui a créé les albums
tableau :
.schema albums
Code language: SQL (Structured Query Language) (sql)
Notez qu'il n'y a pas de point-virgule (;
) après le nom de la table. Si vous ajoutez un point-virgule (;
), le .schema
examinera les albums;
comme nom de table et ne renvoie rien car la table albums;
n'existe pas.
Voici le résultat :
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)
Une autre façon de montrer la structure d'une table est d'utiliser le PRAGMA
commande. Pour ce faire, vous utilisez la commande suivante pour formater la sortie :
.header on
.mode column
Code language: SQL (Structured Query Language) (sql)
Et utilisez le PRAGMA
commande comme suit :
pragma table_info('albums');
Code language: JavaScript (javascript)
L'image suivante montre la sortie :
cid name type notnull dflt_value pk
--- -------- ------------- ------- ---------- --
0 AlbumId INTEGER 1 1
1 Title NVARCHAR(160) 1 0
2 ArtistId INTEGER 1 0
Obtenir la structure d'une table à l'aide de l'instruction SQL
Vous pouvez trouver la structure d'une table en l'interrogeant à partir du sqlite_schema
tableau comme suit :
SELECT sql
FROM sqlite_schema
WHERE name = 'albums';
Code language: SQL (Structured Query Language) (sql)
Voici le résultat :
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)
Dans ce didacticiel, vous avez appris à afficher la structure d'une table dans SQLite via un programme shell en ligne de commande ou une instruction SQL.