MySQLで特定のテーブルがどのデータベースにあるかを検索する方法は、以下の2つがあります。
- SHOWステートメントの使用
- INFORMATION_SCHEMAデータベースの使用
順番に説明します。
SHOWステートメント
SHOWステートメントを使用して、指定したテーブルの情報、つまり所属するデータベースを表示できます。
SHOW TABLE STATUS LIKE '表名';
ここで「テーブル名」は検索するテーブル名を指します。このステートメントを実行すると、テーブルの詳細情報が返され、その中に所属するデータベース名であるDatabaseフィールドが含まれます。
INFORMATION_SCHEMAデータベース
INFORMATION_SCHEMAデータベースをクエリして、データベース内のすべてのテーブルの情報、つまり所属するデータベースを取得できます。
SELECT TABLE_SCHEMA
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'テーブル名';
ここで「テーブル名」は検索するテーブル名を指します。このクエリを実行すると、テーブルが所属するデータベース名が返されます。
コメント