SQL - 顯示資料庫:初學者指南

您好,有志於數據庫的愛好者!今天,我們將踏上一段令人興奮的旅程,進入 SQL 的世界,特別聚焦於如何顯示或列出資料庫。別擔心如果你之前從未寫過一行代碼——我將成為你的友好導遊,我們會一步步來。所以,來一杯咖啡,讓我們開始吧!

SQL - Show Databases

資料庫是什麼?

在我們跳進顯示資料庫之前,讓我們快速了解資料庫是什麼。想像一個數字化的文件櫥,你可以在裡面存儲、組織和檢索信息。這就是資料庫的本質!在計算機世界中,我們使用資料庫來跟蹤各種數據,從你喜歡的網上購物網站的庫存到你社交媒體的帖子。

我們為什麼需要顯示資料庫?

現在,你可能會想,「我們為什麼需要顯示資料庫?」想像你是一個負責全市多個圖書館的圖書館員。難道有一份你所管理的所有圖書館的名單不會很有幫助嗎?這正是 SQL 中顯示資料庫為我們所做的——它給我們提供了一個我們可以訪問的所有資料庫的概覽。

使用 SQL 顯示資料庫

在 SQL 中,有幾種方法可以列出或顯示資料庫。讓我們一一探索這些方法。

使用 SHOW DATABASES 語句

最直接的方法來列出所有資料庫是使用 SHOW DATABASES 語句。這就像問 SQL,「嘿,你能告訴我我們有哪些資料庫嗎?」

SHOW DATABASES;

當你運行這個命令時,SQL 將返回一個你可以訪問的所有資料庫的名單。它可能看起來像這樣:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| my_first_database  |
+--------------------+

這個結果的每一行代表一個資料庫。像 'information_schema'、'mysql'、'performance_schema' 和 'sys' 這樣的資料庫是 MySQL 的系統資料庫。你自己創建的任何資料庫(如這個例子中的 'my_first_database')也會出現在這個名單中。

使用 SHOW SCHEMAS 語句

你知道在 SQL 中 'schema' 是 'database' 的另一個詞嗎?這是真的!因此,我們也可以使用 SHOW SCHEMAS 語句,它與 SHOW DATABASES 做的事情完全相同。

SHOW SCHEMAS;

這將給你與 SHOW DATABASES 相同的結果。這就像在餐廳點餐——無論你是說「我可以看菜單嗎?」還是「我可以看菜品的列表嗎?」,你會得到同樣的東西!

使用 SELECT...FROM 語句

對於那些喜歡展示他們 SQL 技能的人來說,還有另一種方法來列出資料庫,使用 SELECT 語句。這種方法涉及查詢 INFORMATION_SCHEMA,這是一個存儲關於其他所有資料庫信息的資料庫。

SELECT SCHEMA_NAME
FROM INFORMATION_SCHEMA.SCHEMATA;

這個查詢說,「請從 INFORMATION_SCHEMA 的 SCHEMATA 表中選擇所有 schema(資料庫)的名稱。」結果將看起來與 SHOW DATABASES 相似,但格式略有不同:

+--------------------+
| SCHEMA_NAME        |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| my_first_database  |
+--------------------+

使用 EXEC sp_databases 語句(SQL Server)

如果你使用的是 Microsoft SQL Server 而不是 MySQL,你還有一個選項: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,除非你添加了自定義备注)。

方法比較

讓我們將這些方法總結在一张方便的表中:

方法 語法 資料庫系統 使用難度 额外信息
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 中顯示或列出資料庫的四種不同方法。無論你喜歡 SHOW DATABASES 的簡單性,SELECT 語句的靈活性,還是 EXEC sp_databases 的額外信息,你现在都有了從鳥瞰的角度查看你的數據庫風景的工具。

記住,能夠列出你的資料庫就像有了你的數據世界的地圖。這是在導航浩瀚的信息海洋中的第一步。隨著你繼續你的 SQL 旅程,你會發現自己經常使用這些命令,特別是當你在使用新系統或試圖在一個複雜的數據庫環境中找到方向時。

持續練習,保持好奇心,並不怕嘗試。在你意識到之前,你會像專家一樣查詢數據庫!下次見,快樂編程!

Credits: Image by storyset