SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

4 Cara Mendaftar Tampilan dalam Database SQLite

Berikut adalah empat opsi untuk menampilkan semua tampilan dalam database SQLite.

sqlite_schema Tabel

Setiap database SQLite berisi satu sqlite_schema tabel yang menyimpan skema untuk database itu. Skema untuk database adalah deskripsi dari semua tabel, indeks, pemicu, dan tampilan lain yang ada di dalam database.

Kami dapat meminta tabel ini untuk mengembalikan tampilan saja:

SELECT name 
FROM sqlite_schema 
WHERE type = 'view';

Contoh hasil:

name    
--------
v1      
vArtists
vAlbums 
vGenres

Dalam kasus saya, saya memiliki empat tampilan dalam database.

sqlite_master Tabel

Untuk kompatibilitas historis, sqlite_schema tabel juga dapat disebut sebagai sqlite_master .

Jadi kita bisa mengubah contoh sebelumnya menjadi berikut:

SELECT name 
FROM sqlite_master 
WHERE type = 'view';

Contoh hasil:

name    
--------
v1      
vArtists
vAlbums 
vGenres

.tables Perintah

Kita juga dapat menggunakan .tables perintah untuk mengembalikan tampilan.

.table perintah menanyakan sqlite_schema tabel untuk semua database terlampir (bukan hanya database utama).

Perintah ini mengembalikan tabel dan tampilan, jadi mungkin tidak berguna seperti metode sebelumnya. Namun, jika Anda memiliki konvensi penamaan yang konsisten untuk tampilan Anda, ini bisa menjadi cara cepat dan mudah untuk mendapatkan daftar tampilan di database.

Contoh:

.tables

Contoh hasil:

Albums      Customers   OrderItems  Products    v1          vArtists  
Artists     Genres      Orders      Vendors     vAlbums     vGenres  

Dalam kasus saya, semua tampilan diawali dengan v , sehingga memudahkan untuk menentukan mana yang merupakan tampilan dan mana yang merupakan tabel.

Kita juga dapat mempersempitnya berdasarkan nama tabel/tampilan dengan menambahkan pola ke .table memerintah. Ini bisa berguna jika Anda memiliki konvensi penamaan yang jelas dan berbeda untuk tampilan Anda yang memisahkannya dari tabel.

Contoh:

.tables 'v%'

Hasil:

Vendors   v1        vAlbums   vArtists  vGenres

Dalam hal ini, konvensi penamaan saya membantu, tetapi tidak mengecualikan semua tabel (Vendors adalah meja). Either way, itu masih mempersempit hasil dan membuatnya lebih mudah untuk melihat semua tampilan dengan pandangan sekilas.

table_list Pernyataan Pragma

Berikut adalah tambahan yang lebih baru untuk SQLite. table_list pernyataan pragma diperkenalkan di SQLite 3.37.0 (dirilis pada 2021-11-27). Pernyataan pragma ini mencantumkan tabel dan tampilan.

Contoh:

PRAGMA table_list;

Hasil:

schema     name                            type   ncol  wr  strict
---------  ------------------------------  -----  ----  --  ------
main       sqlite_schema                   table  5     0   0     
temp       sqlite_temp_schema              table  5     0   0     
Northwind  Sales by Category               view   4     0   0     
Northwind  Sales Totals by Amount          view   4     0   0     
Northwind  Products by Category            view   5     0   0     
Northwind  Summary of Sales by Quarter     view   3     0   0     
Northwind  Product Sales for 1997          view   3     0   0     
Northwind  Order Subtotals                 view   2     0   0     
Northwind  Invoices                        view   26    0   0     
Northwind  Quarterly Orders                view   4     0   0     
Northwind  Customer and Suppliers by City  view   4     0   0     
Northwind  Alphabetical list of products   view   11    0   0     
Northwind  Order Details Extended          view   7     0   0     
Northwind  Category Sales for 1997         view   2     0   0     
Northwind  Products Above Average Price    view   2     0   0     
Northwind  Orders Qry                      view   20    0   0     
Northwind  Suppliers                       table  12    0   0     
Northwind  Summary of Sales by Year        view   3     0   0     
Northwind  Regions                         table  2     0   0     
Northwind  Orders                          table  14    0   0     
Northwind  sqlite_schema                   table  5     0   0     
Northwind  Categories                      table  4     0   0     
Northwind  sqlite_sequence                 table  2     0   0     
Northwind  Products                        table  10    0   0     
Northwind  CustomerDemographics            table  2     0   0     
Northwind  CustomerCustomerDemo            table  2     0   0     
Northwind  Customers                       table  11    0   0     
Northwind  Employees                       table  18    0   0     
Northwind  Current Product List            view   2     0   0     
Northwind  Territories                     table  3     0   0     
Northwind  EmployeeTerritories             table  2     0   0     
Northwind  Shippers                        table  3     0   0     
Northwind  Order Details                   table  5     0   0   

Kita bisa melihat mana yang dilihat dengan melihat type kolom.

Anda dapat mempersempitnya ke skema tertentu, dan Anda dapat mencari berdasarkan nama tabel/tampilan. Lihat PRAGMA table_list di SQLite untuk ikhtisar dan contoh opsi ini.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GreenDAO mendukung banyak hubungan antar tabel

  2. Bagaimana iif() Bekerja di SQLite

  3. Android:onUpgrade tidak menelepon saat pemutakhiran basis data

  4. Cara Mengaktifkan Dukungan Kunci Asing di SQLite

  5. Bagaimana Fungsi Strftime() Bekerja di SQLite