sp_helpdb (Transact-SQL)

适用于SQL Server

报告有关指定数据库或所有数据库的信息。

Transact-SQL 语法约定

语法

sp_helpdb [ [ @dbname = ] N'dbname' ]
[ ; ]

参数

[ @dbname = ] N'dbname'

报告其信息的数据库的名称。 @dbname为 sysname,默认值为 NULL. 如果未 指定@dbname ,则 sp_helpdb 报告目录视图中的所有数据库 sys.databases

返回代码值

0(成功)或 1(失败)。

结果集

列名称 数据类型 描述
name sysname 数据库名称。
db_size nvarchar(13) 数据库总计大小。
owner sysname 数据库所有者,例如 sa
dbid smallint 数据库 ID。
created nvarchar(11) 数据库创建的日期。
status nvarchar(600) 以逗号分隔的值列表,这些值是当前在数据库上设置的数据库选项的值。

仅当启用了布尔值选项时,才会列出它们。 非布尔选项以相应的值的形式 <option_name>=<value>列出。

有关详细信息,请参阅 ALTER DATABASE
compatibility_level tinyint 数据库 兼容性级别:90、100、110、120、130、140、150 或 160。

如果 指定了@dbname ,则额外结果集显示指定数据库的文件分配。

列名称 数据类型 描述
name nchar(128) 逻辑文件名。
fileid smallint 文件 ID。
filename nchar(260) 操作系统文件名(物理文件名称)。
filegroup nvarchar(128) 文件所属的文件组。

NULL = 文件是日志文件。 日志文件从来不是文件组的一部分。
size nvarchar(18) 文件大小 (MB)。
maxsize nvarchar(18) 文件大小可达到的最大值。 此字段中的值 UNLIMITED 指示文件在磁盘已满之前增长。
growth nvarchar(18) 文件的增量。 此值指示每次需要新空间时添加到文件的空间量。
usage varchar(9) 文件用法。 对于数据文件,该值为data only日志文件的值。log only

注解

结果集中的 status 列报告数据库中设置 ON 的选项。 并非所有数据库选项都由 status 列报告。 若要查看当前数据库选项设置的完整列表,请使用 sys.databases 目录视图。

权限

指定单个数据库时,需要数据库中的公共角色的成员身份。 如果未指定任何数据库,则需要数据库中的公共角色master的成员身份

如果无法访问某个数据库, sp_helpdb 则显示错误消息 15622,以及有关数据库的信息与它一样多。

示例

A. 返回有关单一数据库的信息

以下示例显示有关 AdventureWorks2022 数据库的信息。

EXEC sp_helpdb N'AdventureWorks2022';

B. 返回有关所有数据库的信息

以下示例显示有关运行 SQL Server 的服务器上的所有数据库的信息。

EXEC sp_helpdb;
GO