SQL - データベースの表示:入門ガイド
こんにちは、データベース愛好家の卵さんたち!今日は、SQLの世界に足を踏み入れる興奮人心的な旅を楽しみましょう。特に、データベースを表示またはリストアップする方法に焦点を当てます。コードを書いたことがない方も心配しないでください。あなたの親切なガイドとして、私はステップバイステップで説明します。まず、コーヒーを一杯取り、一緒に潜りましょう!
データベースとは?
データベースを表示する前に、データベースとは何か簡単に理解しましょう。デジタルの書類 cabinet で情報を保存、整理、検索できるものを思い浮かべてください。それがデータベースです!コンピュータの世界では、データベースを使ってさまざまなデータを管理します。あなたが好きなオンラインショッピングサイトの在庫から、ソーシャルメディアの投稿までです。
データベースを表示する理由
「なぜデータベースを表示する必要があるの?」と疑うかもしれません。図書館の司書として、市内の複数の図書館を管理していると仮定しましょう。すべての図書館のリストを持っていると便利ではありませんか?SQLでデータベースを表示するのはまさにそれと同じです。アクセスできるすべてのデータベースの概要を提供してくれます。
SQLを使用してデータベースをリストアップする方法
SQLには、データベースをリストアップまたは表示する複数の方法があります。それぞれの方法を順番に見ていきましょう。
SHOW DATABASES 文
最も簡単な方法は、SHOW DATABASES
文を使用することです。まるでSQLに「さあ、私にすべてのデータベースを見せてくれ」と言っているようなものです。
SHOW DATABASES;
このコマンドを実行すると、アクセスできるすべてのデータベースのリストが返されます。以下のような感じです:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| my_first_database |
+--------------------+
この結果の各行は、データベースを表しています。'information_schema'、'mysql'、'performance_schema'、'sys' などのデータベースは、MySQLに付属するシステムデータベースです。自分で作成したデータベース(この例では 'my_first_database')もこのリストに表示されます。
SHOW SCHEMAS 文
ご存知かもしれませんが、「schema」はSQLでは「database」と同じ意味です。そのため、SHOW SCHEMAS
文も使用して、同じ結果を得ることができます。
SHOW SCHEMAS;
これにより、SHOW DATABASES
と同じ結果が得られます。まるでレストランでメニューを頼むのと同じで、「メニューを見せてくれ」とか「すべての料理のリストを見せてくれ」と言った場合、同じものが提供されます。
SELECT...FROM 文
SQLをさらに活用したい方には、SELECT
文を使用してデータベースをリストアップする方法もあります。この方法は INFORMATION_SCHEMA
をクエリすることを伴います。
SELECT SCHEMA_NAME
FROM INFORMATION_SCHEMA.SCHEMATA;
このクエリは、「INFORMATION_SCHEMAのSCHEMATAテーブルからすべてのスキーマ(データベース)の名前を選んでください」と言っています。結果は SHOW DATABASES
と似ていますが、少し異なる形式で表示されます:
+--------------------+
| SCHEMA_NAME |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| my_first_database |
+--------------------+
EXEC sp_databases 文(SQL Server)
Microsoft SQL Serverを使用している場合、別のオプションがあります。EXEC sp_databases
文です。まるで助手的なロボットに、データベースのリストを取得するためのプログラムを実行させるようなものです。
EXEC sp_databases;
これにより、各データベースに関する追加情報が含まれた結果セットが返されます:
+--------------------+--------------+-------------------+
| DATABASE_NAME | DATABASE_SIZE| REMARKS |
+--------------------+--------------+-------------------+
| master | 6392 | NULL |
| tempdb | 16384 | NULL |
| model | 16384 | NULL |
| msdb | 15928 | NULL |
| my_first_database | 8192 | NULL |
+--------------------+--------------+-------------------+
ここでは、データベース名だけでなく、サイズや备注(通常はNULL)も表示されます。
メソッドの比較
これらのメソッドを簡単な表にまとめます:
メソッド | シntax | データベースシステム | 使用の易しさ | 追加情報 |
---|---|---|---|---|
SHOW DATABASES | SHOW DATABASES; |
MySQL, MariaDB | 非常に易しい | なし |
SHOW SCHEMAS | SHOW SCHEMAS; |
MySQL, MariaDB | 非常に易しい | なし |
SELECT...FROM | SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA; |
MySQL, MariaDB, PostgreSQL | 中程度 | カスタマイズ可能 |
EXEC sp_databases | EXEC sp_databases; |
SQL Server | 易しい | サイズと备注 |
結論
そして、皆さん!私たちはSQLでデータベースを表示またはリストアップする4つの異なる方法を探求しました。SHOW DATABASES
のシンプルさ、SELECT
文の柔軟性、または EXEC sp_databases
の追加情報を好むかどうかに関わらず、データベースの俯瞰図を得るためのツールを手に入れました。
データベースをリストアップすることは、データの世界を探索するための地図を持つようなものです。新しいシステムで作業する際や、複雑なデータベース環境で方角を確定する際に特に役立ちます。
練習を続け、好奇心を持ち、実験を恐れずにください。すぐにプロのようにデータベースをクエリするようになるでしょう!次回まで、ハッピーコーディングを!
Credits: Image by storyset