- SQL 教程
- SQL - 首页
- SQL - 概述
- SQL - RDBMS 概念
- SQL - 数据库
- SQL - 语法
- SQL - 数据类型
- SQL - 运算符
- SQL - 表达式
- SQL 数据库
- SQL - 创建数据库
- SQL - 删除数据库
- SQL - 选择数据库
- SQL - 重命名数据库
- SQL - 显示数据库
- SQL - 备份数据库
- SQL 表
- SQL - 创建表
- SQL - 显示表
- SQL - 重命名表
- SQL - 截断表
- SQL - 克隆表
- SQL - 临时表
- SQL - 修改表
- SQL - 删除表
- SQL - 删除表
- SQL - 约束
- SQL 查询
- SQL - INSERT 查询
- SQL - SELECT 查询
- SQL - SELECT INTO
- SQL - INSERT INTO SELECT
- SQL - UPDATE 查询
- SQL - DELETE 查询
- SQL - 排序结果
- SQL 视图
- SQL - 创建视图
- SQL - 更新视图
- SQL - 删除视图
- SQL - 重命名视图
- SQL 运算符和子句
- SQL - WHERE 子句
- SQL - TOP 子句
- SQL - DISTINCT 子句
- SQL - ORDER BY 子句
- SQL - GROUP BY 子句
- SQL - HAVING 子句
- SQL - AND & OR
- SQL - 布尔 (BIT) 运算符
- SQL - LIKE 运算符
- SQL - IN 运算符
- SQL - ANY, ALL 运算符
- SQL - EXISTS 运算符
- SQL - CASE
- SQL - NOT 运算符
- SQL - 不等于
- SQL - IS NULL
- SQL - IS NOT NULL
- SQL - NOT NULL
- SQL - BETWEEN 运算符
- SQL - UNION 运算符
- SQL - UNION 与 UNION ALL
- SQL - INTERSECT 运算符
- SQL - EXCEPT 运算符
- SQL - 别名
- SQL 连接
- SQL - 使用连接
- SQL - 内连接
- SQL - 左连接
- SQL - 右连接
- SQL - 交叉连接
- SQL - 全连接
- SQL - 自连接
- SQL - 删除连接
- SQL - 更新连接
- SQL - 左连接与右连接
- SQL - UNION 与 JOIN
- SQL 键
- SQL - 唯一键
- SQL - 主键
- SQL - 外键
- SQL - 组合键
- SQL - 备选键
- SQL 索引
- SQL - 索引
- SQL - 创建索引
- SQL - 删除索引
- SQL - 显示索引
- SQL - 唯一索引
- SQL - 聚簇索引
- SQL - 非聚簇索引
- 高级 SQL
- SQL - 通配符
- SQL - 注释
- SQL - 注入
- SQL - 托管
- SQL - MIN & MAX
- SQL - NULL 函数
- SQL - CHECK 约束
- SQL - DEFAULT 约束
- SQL - 存储过程
- SQL - NULL 值
- SQL - 事务
- SQL - 子查询
- SQL - 处理重复项
- SQL - 使用序列
- SQL - 自动递增
- SQL - 日期和时间
- SQL - 游标
- SQL - 通用表表达式
- SQL - GROUP BY 与 ORDER BY
- SQL - IN 与 EXISTS
- SQL - 数据库调优
- SQL 函数参考
- SQL - 日期函数
- SQL - 字符串函数
- SQL - 聚合函数
- SQL - 数值函数
- SQL - 文本和图像函数
- SQL - 统计函数
- SQL - 逻辑函数
- SQL - 游标函数
- SQL - JSON 函数
- SQL - 转换函数
- SQL - 数据类型函数
- SQL 有用资源
- SQL - 问答
- SQL - 快速指南
- SQL - 有用函数
- SQL - 有用资源
- SQL - 讨论
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 |