Dalam artikel ini saya menguraikan dua cara untuk mengembalikan daftar indeks dalam database SQLite.
Metode pertama (dan paling jelas) adalah dengan menggunakan .indexes
perintah titik. Metode kedua adalah menanyakan sql_master tabel.
Perintah .indexes
Berikut ini contoh penggunaan .indexes
perintah pada database sampel Chinook.
.indexes
Hasil:
IFK_AlbumArtistId IFK_PlaylistTrackTrackIdIFK_CustomerSupportRepId IFK_TrackAlbumIdIFK_EmployeeReportsKe IFK_TrackGenreIdIFK_InvoiceCustomerId IFK_TrackMediaTypeIdIFK_InvoiceLine_InvoiceLineIndeksIdIFK_Trackite_InvoiceLineInvoiceAnda juga dapat memberikan argumen untuk menentukan indeks/indeks mana yang ingin Anda kembalikan. Anda dapat memberikan nama lengkap indeks atau Anda dapat menggunakan pencocokan pola untuk mengembalikan semua indeks yang cocok dengan pola tersebut.
Contoh penggunaan pencocokan pola:
.indexes %invoice%
Hasil:
IFK_InvoiceCustomerId IFK_InvoiceLineInvoiceId IFK_InvoiceLineTrackIdTabel sqlite_master
Sebagai alternatif dari
.indexes
perintah, Anda dapat menjalankan kueri terhadap sql_master meja.Tabel ini berisi lebih dari sekadar indeks, tetapi Anda dapat menggunakan
WHERE
klausa untuk mempersempitnya menjadi hanya indeks:SELECT name FROM sqlite_master WHERE type = 'index';
Hasil:
IFK_AlbumArtistIdsqlite_autoindex_PlaylistTrack_1IFK_CustomerSupportRepIdIFK_EmployeeReportsToIFK_InvoiceCustomerIdIFK_InvoiceLineInvoiceIdIFK_InvoiceLineTrackIdIFK_PlaylistTrackTrackIdIFK_TrackIdAlbumIdpreK_TrackIdAlbumIdSalah satu manfaat menggunakan metode ini adalah Anda juga dapat mengembalikan tabel tempat setiap indeks berada. Ini disimpan di tbl_name kolom.
Contoh:
.mode column .headers on .width 32 13 SELECT name, tbl_name FROM sqlite_master WHERE type = 'index';
Kembali:
nama tbl_name -------------------------------- ------------- IFK_AlbumArtistId Album sqlite_autoindex_PlaylistTrack_1 PlaylistTrackIFK_CustomerSupportRepId Customer IFK_EmployeeReportsTo Employee IFK_InvoiceCustomerId Invoice IFK_InvoiceLineInvoiceId InvoiceLine IFK_InvoiceLineTrackId InvoiceLine IFK_PlaylistTrackTrackId PlaylistTrackIFK_TrackAlbumId Track IFK_TrackGenreId Track IFK_TrackMediaTypeId Track