Shrnutí :v tomto tutoriálu se naučíte různé způsoby zobrazení tabulek z databáze SQLite pomocí shellového programu příkazového řádku SQLite nebo dotazováním na data z sqlite_master tabulky.
Zobrazení tabulek pomocí shellového programu příkazového řádku sqlite
Chcete-li zobrazit tabulky v databázi pomocí shellového programu příkazového řádku sqlite, postupujte takto:
Nejprve otevřete databázi, ve které chcete zobrazit tabulky:
sqlite3 c:\sqlite\db\chinook.dbCode language: SQL (Structured Query Language) (sql)
Výše uvedený příkaz otevřel databázi s názvem chinook.db který se nachází v c:\sqlite\db adresář.
Zadruhé zadejte .tables příkaz:
tablesCode language: SQL (Structured Query Language) (sql)
.tables příkaz vypíše všechny tabulky v chinook databáze
albums employees invoices playlists
artists genres media_types tracks
customers invoice_items playlist_trackCode language: SQL (Structured Query Language) (sql)
Všimněte si, že obě .tables , .table mít stejný účinek. Navíc příkaz .ta by také mělo fungovat.
.tables příkaz lze také použít k zobrazení dočasných tabulek. Viz následující příklad:
Nejprve vytvořte novou dočasnou tabulku s názvem temp_table1 :
CREATE TEMPORARY TABLE temp_table1( name TEXT );Code language: SQL (Structured Query Language) (sql) Za druhé, vypište všechny tabulky z databáze:
.tablesCode language: SQL (Structured Query Language) (sql) Následující zobrazuje výstup:
albums employees invoices playlists
artists genres media_types temp.temp_table1
customers invoice_items playlist_track tracksCode language: SQL (Structured Query Language) (sql)
Protože schéma dočasných tabulek je temp , příkaz zobrazil názvy schématu a tabulky dočasné tabulky, jako je temp.temp_table1 .
Pokud chcete zobrazit tabulky s konkrétním názvem, můžete přidat odpovídající vzor:
.tables patternCode language: SQL (Structured Query Language) (sql)
Příkaz funguje stejně jako LIKE operátor. Vzor musí být ohraničen jednoduchými uvozovkami ( ' ).
Chcete-li například najít tabulky, jejichž názvy začínají písmenem ‚a‘, použijte následující příkaz:
.table 'a%'Code language: SQL (Structured Query Language) (sql) Zde je výstup:
albums artistsCode language: plaintext (plaintext)
Zobrazí tabulky, jejichž název obsahuje řetězec ck , použijete %ck% vzor, jak je znázorněno v následujícím příkazu:
.tables '%ck%'Code language: SQL (Structured Query Language) (sql) Výstup je následující:
playlist_track tracksCode language: SQL (Structured Query Language) (sql) Zobrazení tabulek pomocí příkazu SQL
Dalším způsobem, jak vypsat seznam všech tabulek v databázi, je dotazovat je z sqlite_schema tabulka.
SELECT
name
FROM
sqlite_schema
WHERE
type ='table' AND
name NOT LIKE 'sqlite_%';Code language: SQL (Structured Query Language) (sql) Zde je výstup:
V tomto dotazu jsme odfiltrovali všechny tabulky, jejichž názvy začínají sqlite_ například sqlite_stat1 a sqlite_sequence tabulky. Tyto tabulky jsou systémové tabulky spravované interně SQLite.
Všimněte si, že SQLite změnil tabulku sqlite_master na sqlite_schema .
V tomto tutoriálu jste se naučili, jak zobrazit všechny tabulky v databázi pomocí .tables nebo dotazem na data ze sqlite_schema tabulka.