SQLiteでは、sqlite_schemaをクエリできます 特定のテーブルが存在するかどうかを確認するためのテーブル。
SQLiteバージョン3.33.0より前は、このテーブルはsqlite_masterと呼ばれていました。 (下位互換性のために、以降のリリースでは引き続きそのように参照できます)。
例
デモンストレーションの例を次に示します。
SELECT EXISTS (
SELECT
name
FROM
sqlite_schema
WHERE
type='table' AND
name='Customers'
); 結果:
1
この場合、テーブルが存在し、1 返されます。
テーブルが存在しない場合の例を次に示します。
SELECT EXISTS (
SELECT
name
FROM
sqlite_schema
WHERE
type='table' AND
name='Inventory'
); 結果:
0
sqlite_master 表
sqlite_masterを使用して同じクエリを実行できます sqlite_schemaの代わりに :
SELECT EXISTS (
SELECT
name
FROM
sqlite_master
WHERE
type='table' AND
name='Customers'
); 結果:
1
sqlite_temp_schemaを使用することもできます またはsqlite_temp_master 、ただし、これらはTEMPでのみ機能します 各データベース接続に関連付けられたデータベース。