MySQLでデータベース一覧を表示するSHOW DATABASESの同義語ステートメントとは?
MySQLでは、SHOW DATABASES ステートメントを使うことで、サーバー上に存在するデータベースの一覧を確認できます。実は、これとまったく同じ結果を得られる同義語(シノニム)として、SHOW SCHEMAS ステートメントが用意されています。
MySQLにおいて「スキーマ」と「データベース」は同じ概念を指すため、どちらのコマンドを実行しても出力結果は同一になります。用途や好みに応じて使い分けることが可能です。
使用例
まずは SHOW DATABASES を実行した例です。
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | gaurav | | mysql | | performance_schema | | query | | query1 | | sys | | tutorials | +--------------------+ 8 rows in set (0.07 sec)
次に、同義語である SHOW SCHEMAS を実行した例です。
mysql> SHOW SCHEMAS; +--------------------+ | Database | +--------------------+ | information_schema | | gaurav | | mysql | | performance_schema | | query | | query1 | | sys | | tutorials | +--------------------+ 8 rows in set (0.00 sec)
このように、両方のコマンドとも同じデータベース一覧が表示され、結果に一切違いがないことがわかります。
補足:特定のパターンで絞り込む方法
データベース数が多い場合は、LIKE 句を使って表示を絞り込むこともできます。
mysql> SHOW DATABASES LIKE 'query%'; +--------------------+ | Database (query%) | +--------------------+ | query | | query1 | +--------------------+ 2 rows in set (0.00 sec)
また、information_schema.SCHEMATA テーブルを参照することでも、同等の情報を取得できます。
mysql> SELECT SCHEMA_NAME FROM information_schema.SCHEMATA;
まとめると、SHOW SCHEMAS が SHOW DATABASES の同義語ステートメントであり、どちらを使用してもMySQLサーバー上のデータベース一覧を取得できます。
-
MySQLの一時テーブルはSHOW TABLESで確認できる?テーブル一覧に表示されない理由と対処法
ご存じのとおり、SHOW TABLESステートメントを使えば、データベース内のテーブル一覧を簡単に確認できます。しかし、MySQLの一時テーブル(TEMPORARY TABLE)は、このリストには表示されません。言い換えると、SHOW TABLESステートメントでは一時テーブルを確認できないということです。以下の例で具体的に見ていきましょう。例:SHOW TABLESで一時テーブルを検索するここでは、「SalesSummary」という名前の一時テーブルをSHOW TABLESステートメントで取得しようとしています。mysql> SHOW TABLES LIKE %Sales%; Empt
-
特定のMySQLデータベースに保存されているビューの一覧を確認する方法
MySQLでは、いくつかの異なるクエリを使って、特定のデータベースに保存されているビュー(VIEW)の一覧を簡単に確認できます。この記事では、「query」という名前のデータベースを例に、代表的な3つの方法を紹介します。 1. information_schemaを使ってビュー一覧を取得する まずは、information_schemaデータベースのTABLESテーブルを参照する方法です。TABLE_TYPEが「VIEW」であるレコードを抽出し、TABLE_SCHEMAで対象のデータベースを指定することで、そのデータベース内のビューだけを一覧表示できます。 mysql> SELECT