Резюме :в този урок ще научите различни начини за показване на таблици от база данни на SQLite с помощта на програмата за обвивка на SQLite от командния ред или чрез запитване на данни от sqlite_master
таблици.
Показване на таблици с помощта на програмата sqlite на командния ред
За да покажете таблици в база данни с помощта на програмата sqlite от командния ред, изпълнете следните стъпки:
Първо отворете базата данни, в която искате да покажете таблиците:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
Горното изявление отвори базата данни с име chinook.db
който се намира в c:\sqlite\db
директория.
Второ, въведете .tables
команда:
tables
Code language: SQL (Structured Query Language) (sql)
.tables
командата изброява всички таблици в chinook
база данни
albums employees invoices playlists
artists genres media_types tracks
customers invoice_items playlist_track
Code language: SQL (Structured Query Language) (sql)
Имайте предвид, че и двете .tables
, .table
имат същия ефект. В допълнение, командата .ta
също трябва да работи.
.tables
командата може да се използва и за показване на временни таблици. Вижте следния пример:
Първо създайте нова временна таблица с име temp_table1
:
CREATE TEMPORARY TABLE temp_table1( name TEXT );
Code language: SQL (Structured Query Language) (sql)
Второ, избройте всички таблици от базата данни:
.tables
Code language: SQL (Structured Query Language) (sql)
Следното показва изхода:
albums employees invoices playlists
artists genres media_types temp.temp_table1
customers invoice_items playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Тъй като схемата на временните таблици е temp
, командата показва имената на схемата и таблицата на временната таблица като temp.temp_table1
.
Ако искате да покажете таблици с конкретното име, можете да добавите съвпадащ модел:
.tables pattern
Code language: SQL (Structured Query Language) (sql)
Командата работи по същия начин като LIKE
оператор. Шаблонът трябва да бъде заобиколен от единични кавички ( '
).
Например, за да намерите таблици, чиито имена започват с буквата „а“, използвате следната команда:
.table 'a%'
Code language: SQL (Structured Query Language) (sql)
Ето изхода:
albums artists
Code language: plaintext (plaintext)
To показва таблиците, чието име съдържа низа ck
, използвате %ck%
модел, както е показано в следната команда:
.tables '%ck%'
Code language: SQL (Structured Query Language) (sql)
Резултатът е както следва:
playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Показване на таблици с SQL израз
Друг начин за изброяване на всички таблици в база данни е да ги заявите от sqlite_schema
таблица.
SELECT
name
FROM
sqlite_schema
WHERE
type ='table' AND
name NOT LIKE 'sqlite_%';
Code language: SQL (Structured Query Language) (sql)
Ето изхода:
В тази заявка филтрирахме всички таблици, чиито имена започват с sqlite_
като sqlite_stat1
и sqlite_sequence
маси. Тези таблици са системните таблици, управлявани вътрешно от SQLite.
Обърнете внимание, че SQLite промени таблицата sqlite_master
към sqlite_schema
.
В този урок научихте как да покажете всички таблици в база данни с помощта на .tables
команда или чрез запитване на данни от sqlite_schema
таблица.