Tóm tắt :trong hướng dẫn này, bạn sẽ tìm hiểu về các cách khác nhau để hiển thị cấu trúc của bảng trong SQLite.
Lấy cấu trúc của bảng thông qua chương trình shell dòng lệnh SQLite
Để tìm ra cấu trúc của bảng thông qua chương trình shell dòng lệnh SQLite, bạn làm theo các bước sau:
Đầu tiên, kết nối với cơ sở dữ liệu thông qua chương trình shell dòng lệnh SQLite:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
Sau đó, đưa ra lệnh sau:
.schema table_name
Code language: SQL (Structured Query Language) (sql)
Ví dụ:lệnh sau đây hiển thị câu lệnh đã tạo albums
bảng:
.schema albums
Code language: SQL (Structured Query Language) (sql)
Lưu ý rằng không có dấu chấm phẩy (;
) sau tên bảng. Nếu bạn thêm dấu chấm phẩy (;
), .schema
sẽ xem xét các album ;
dưới dạng tên bảng và không trả về gì vì bảng albums;
không tồn tại.
Đây là kết quả:
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)
Một cách khác để hiển thị cấu trúc của bảng là sử dụng PRAGMA
yêu cầu. Để làm điều đó, bạn sử dụng lệnh sau để định dạng đầu ra:
.header on
.mode column
Code language: SQL (Structured Query Language) (sql)
Và sử dụng PRAGMA
lệnh như sau:
pragma table_info('albums');
Code language: JavaScript (javascript)
Hình ảnh sau đây cho thấy kết quả đầu ra:
cid name type notnull dflt_value pk
--- -------- ------------- ------- ---------- --
0 AlbumId INTEGER 1 1
1 Title NVARCHAR(160) 1 0
2 ArtistId INTEGER 1 0
Lấy cấu trúc của bảng bằng câu lệnh SQL
Bạn có thể tìm thấy cấu trúc của một bảng bằng cách truy vấn nó từ sqlite_schema
bảng như sau:
SELECT sql
FROM sqlite_schema
WHERE name = 'albums';
Code language: SQL (Structured Query Language) (sql)
Đây là kết quả:
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)
Trong hướng dẫn này, bạn đã học cách hiển thị cấu trúc của một bảng trong SQLite thông qua chương trình shell dòng lệnh hoặc câu lệnh SQL.