Tóm tắt :trong hướng dẫn này, bạn sẽ học các cách khác nhau để hiển thị bảng từ cơ sở dữ liệu SQLite bằng cách sử dụng chương trình shell dòng lệnh SQLite hoặc bằng cách truy vấn dữ liệu từ sqlite_master
bảng.
Hiển thị các bảng bằng chương trình shell dòng lệnh sqlite
Để hiển thị các bảng trong cơ sở dữ liệu bằng chương trình shell dòng lệnh sqlite, bạn hãy làm theo các bước sau:
Đầu tiên, hãy mở cơ sở dữ liệu mà bạn muốn hiển thị các bảng:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
Câu lệnh trên đã mở cơ sở dữ liệu có tên chinook.db
định vị trong c:\sqlite\db
thư mục.
Thứ hai, nhập .tables
lệnh:
tables
Code language: SQL (Structured Query Language) (sql)
.tables
lệnh liệt kê tất cả các bảng trong chinook
cơ sở dữ liệu
albums employees invoices playlists
artists genres media_types tracks
customers invoice_items playlist_track
Code language: SQL (Structured Query Language) (sql)
Lưu ý rằng cả .tables
, .table
có tác dụng tương tự. Ngoài ra, lệnh .ta
cũng nên hoạt động.
.tables
lệnh cũng có thể được sử dụng để hiển thị các bảng tạm thời. Xem ví dụ sau:
Đầu tiên, tạo một bảng tạm thời mới có tên temp_table1
:
CREATE TEMPORARY TABLE temp_table1( name TEXT );
Code language: SQL (Structured Query Language) (sql)
Thứ hai, liệt kê tất cả các bảng từ cơ sở dữ liệu:
.tables
Code language: SQL (Structured Query Language) (sql)
Sau đây là kết quả đầu ra:
albums employees invoices playlists
artists genres media_types temp.temp_table1
customers invoice_items playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Bởi vì lược đồ của các bảng tạm thời là temp
, lệnh hiển thị tên của lược đồ và bảng của bảng tạm thời, chẳng hạn như temp.temp_table1
.
Nếu bạn muốn hiển thị các bảng có tên cụ thể, bạn có thể thêm một mẫu phù hợp:
.tables pattern
Code language: SQL (Structured Query Language) (sql)
Lệnh hoạt động giống như LIKE
nhà điều hành. Mẫu phải được bao quanh bởi dấu ngoặc kép ('
).
Ví dụ:để tìm các bảng có tên bắt đầu bằng chữ cái ‘a’, bạn sử dụng lệnh sau:
.table 'a%'
Code language: SQL (Structured Query Language) (sql)
Đây là kết quả:
albums artists
Code language: plaintext (plaintext)
Để hiển thị các bảng có tên chứa chuỗi ck
, bạn sử dụng %ck%
như được hiển thị trong lệnh sau:
.tables '%ck%'
Code language: SQL (Structured Query Language) (sql)
Kết quả như sau:
playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Hiển thị các bảng bằng câu lệnh SQL
Một cách khác để liệt kê tất cả các bảng trong cơ sở dữ liệu là truy vấn chúng từ sqlite_schema
bảng.
SELECT
name
FROM
sqlite_schema
WHERE
type ='table' AND
name NOT LIKE 'sqlite_%';
Code language: SQL (Structured Query Language) (sql)
Đây là kết quả:
![](http://www.sqldat.com/article/uploadfiles/202205/2022051314223845.png)
Trong truy vấn này, chúng tôi đã lọc ra tất cả các bảng có tên bắt đầu bằng sqlite_
chẳng hạn như sqlite_stat1
và sqlite_sequence
những cái bàn. Các bảng này là các bảng hệ thống được quản lý nội bộ bởi SQLite.
Lưu ý rằng SQLite đã thay đổi bảng sqlite_master
tới sqlite_schema
.
Trong hướng dẫn này, bạn đã học cách hiển thị tất cả các bảng trong cơ sở dữ liệu bằng cách sử dụng .tables
lệnh hoặc bằng cách truy vấn dữ liệu từ sqlite_schema
bảng.