I den här artikeln beskriver jag två sätt att returnera en lista med index i en SQLite-databas.
Den första (och mest uppenbara) metoden är att använda .indexes
punkt kommando. Den andra metoden är att fråga sql_master bord.
.indexes-kommandot
Här är ett exempel på hur du använder .indexes
kommandot i Chinook-exempeldatabasen.
.indexes
Resultat:
IFK_AlbumArtistId IFK_PlaylistTrackTrackIdIFK_CustomerSupportRepId IFK_TrackAlbumIdIFK_EmployeeReportsTo IFK_TrackGenreIdIFK_InvoiceCustomerId IFK_TrackMediaTypeIdrackLIFKiDDu kan också ange ett argument för att ange vilket/vilka index du vill ha tillbaka. Du kan ange det fullständiga namnet på indexet eller så kan du använda mönstermatchning för att returnera alla index som matchar det mönstret.
Exempel på användning av mönstermatchning:
.indexes %invoice%
Resultat:
IFK_InvoiceCustomerId IFK_InvoiceLineInvoiceId IFK_InvoiceLineTrackIdSqlite_master-tabellen
Som ett alternativ till
.indexes
kommandot kan du köra en fråga mot sql_master tabell.Den här tabellen innehåller mer än bara index, men du kan använda en
WHERE
klausul för att begränsa det till bara index:SELECT name FROM sqlite_master WHERE type = 'index';
Resultat:
IFK_AlbumArtistIdsqlite_autoindex_PlaylistTrack_1IFK_CustomerSupportRepIdIFK_EmployeeReportsToIFK_InvoiceCustomerIdIFK_InvoiceLineInvoiceIdIFK_InvoiceLineSupportRepIdIFK_EmployeeReportsToIFK_InvoiceCustomerIdIFK_InvoiceLineInvoiceIdIFK_InvoiceLineTrackIdIFTK_AlbumTrackIFKIEn fördel med att använda denna metod är att du också kan returnera tabellen som varje index tillhör. Detta lagras i tbl_name kolumn.
Exempel:
.mode column .headers on .width 32 13 SELECT name, tbl_name FROM sqlite_master WHERE type = 'index';
Retur:
name 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