Резюме :в този урок ще научите за различни начини за показване на структурата на таблица в 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) В този урок научихте как да покажете структурата на таблица в SQLite чрез шел програма от команден ред или SQL израз.