SQL - 顯示資料庫



很多時候,您會遇到需要列出所有可用資料庫的情況。MySQL 提供了一種方便的方法來使用SHOW DATABASES命令列出所有資料庫,而 MS SQL Server 中沒有特定的命令來顯示或列出資料庫,但是,您可以使用SELECT...FROM命令作為變通方法來列出可用的資料庫。

使用 SQL 列出資料庫

SQL 的SHOW DATABASES語句用於列出 MySQL 資料庫中所有可用的資料庫。您可以使用SHOW SCHEMAS作為SHOW DATABASES的替代命令。

語法

以下是 SQL SHOW DATABASES的語法,用於列出 MySQL 中所有可用的資料庫:

SHOW DATABASES [LIKE 'pattern' | WHERE expr] ;

我們可以結合使用 LIKE 或 WHERE 子句和 SHOW DATABASES 來過濾資料庫列表。

示例

以下是如何列出所有可用資料庫的示例:

SHOW DATABASES;

輸出將如下所示。此輸出取決於系統中可用的資料庫數量:

資料庫
performance_schema
information_schema
mysql
testDB

以下是如何列出所有名稱以“test”開頭的資料庫的示例:

SHOW DATABASES LIKE 'test%';

輸出將如下所示:

資料庫 (test%)
testDB

SHOW SCHEMAS 語句

您可以使用SHOW SCHEMAS語句作為SHOW DATABASES語句的替代。

語法

以下是 SQL SHOW SCHEMAS語句的語法,用於列出 MySQL 中所有可用的資料庫:

SHOW SCHEMAS [LIKE 'pattern' | WHERE expr] ;

我們可以結合使用 LIKE 或 WHERE 子句和 SHOW SCHEMAS 來過濾資料庫列表。

示例

以下是如何列出所有可用資料庫的示例:

SHOW SCHEMAS;

輸出將如下所示。此輸出取決於系統中可用的資料庫數量:

資料庫
performance_schema
information_schema
mysql
testDB

以下是如何列出所有名稱以“test”開頭的資料庫的示例:

SHOW SCHEMAS LIKE 'test%';

輸出將如下所示:

資料庫 (test%)
testDB

SELECT...FROM 語句

如果您使用的是 MS SQL Server,則可以使用SELECT...FROM語句列出所有可用的資料庫,如下所示。

SQL> SELECT * FROM sys.databases;

輸出

如果我們執行上述查詢,它將返回一個表,其中列出了所有資料庫以及有關資料庫的相關資訊。

名稱 資料庫 ID 源資料庫 ID 所有者 SID
master 1 NULL 001
tempdb 2 NULL 001
model 3 NULL 001
msdb 4 NULL 001
testDB 5 NULL 001000

EXEC sp_databases 語句

如果您使用的是 MS SQL Server,則可以使用以下EXEC sp_databases語句列出所有資料庫:

SQL> EXEC sp_databases;

輸出

這將顯示與我們從SELECT...FROM語句獲得的結果相同的結果。

名稱 資料庫 ID 源資料庫 ID 所有者 SID
master 1 NULL 001
tempdb 2 NULL 001
model 3 NULL 001
msdb 4 NULL 001
testDB 5 NULL 001000
廣告