Резюме :в този урок ще научите за различни начини за показване на структурата на таблица в SQLite.
Получаване на структурата на таблица чрез шел програмата на SQLite
За да разберете структурата на таблица чрез обвивната програма на SQLite от командния ред, изпълнете следните стъпки:
Първо, свържете се с база данни чрез шел програмата на SQLite:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
След това издайте следната команда:
.schema table_name
Code language: SQL (Structured Query Language) (sql)
Например, следната команда показва изявлението, създало albums
таблица:
.schema albums
Code 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 column
Code 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)
В този урок научихте как да покажете структурата на таблица в SQLite чрез шел програма от команден ред или SQL израз.