Shrnutí :v tomto tutoriálu se dozvíte o různých způsobech zobrazení struktury tabulky v SQLite.
Získání struktury tabulky pomocí shellového programu příkazového řádku SQLite
Chcete-li zjistit strukturu tabulky pomocí shellového programu příkazového řádku SQLite, postupujte takto:
Nejprve se připojte k databázi pomocí shellového programu příkazového řádku SQLite:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
Potom zadejte následující příkaz:
.schema table_name
Code language: SQL (Structured Query Language) (sql)
Například následující příkaz zobrazuje příkaz, který vytvořil albums
tabulka:
.schema albums
Code language: SQL (Structured Query Language) (sql)
Všimněte si, že zde není žádný středník (;
) za názvem tabulky. Pokud přidáte středník (;
), .schema
zváží albums;
jako název tabulky a nevrací nic, protože tabulka albums;
neexistuje.
Zde je výstup:
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)
Dalším způsobem, jak ukázat strukturu tabulky, je použít PRAGMA
příkaz. Chcete-li to provést, použijte k formátování výstupu následující příkaz:
.header on
.mode column
Code language: SQL (Structured Query Language) (sql)
A použijte PRAGMA
příkaz takto:
pragma table_info('albums');
Code language: JavaScript (javascript)
Následující obrázek ukazuje výstup:
cid name type notnull dflt_value pk
--- -------- ------------- ------- ---------- --
0 AlbumId INTEGER 1 1
1 Title NVARCHAR(160) 1 0
2 ArtistId INTEGER 1 0
Získání struktury tabulky pomocí příkazu SQL
Strukturu tabulky můžete najít dotazem z sqlite_schema
tabulka takto:
SELECT sql
FROM sqlite_schema
WHERE name = 'albums';
Code language: SQL (Structured Query Language) (sql)
Zde je výstup:
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)
V tomto tutoriálu jste se naučili, jak zobrazit strukturu tabulky v SQLite pomocí shellového programu příkazového řádku nebo příkazu SQL.