📜  SQL Server 中的 DATABASEPROPERTYEX()(1)

📅  最后修改于: 2023-12-03 15:20:14.969000             🧑  作者: Mango

SQL Server 中的 DATABASEPROPERTYEX()

在SQL Server中,DATABASEPROPERTYEX()函数是一个非常有用的函数,它可以返回有关数据库的各种属性。

语法
DATABASEPROPERTYEX ( database_name , property_name )
参数
  • database_name: 数据库名称。

  • property_name: 属性名称。可以是以下属性之一:

    • Collation: 返回数据库的排序规则名称。
    • ComparisonStyle: 返回数据库的比较样式。
    • IsAnsiNullDefault: 如果在此数据库中创建新表时未明确指定 ANSI_NULL_DFLT_ON 或 ANSI_NULL_DFLT_OFF,则返回 1。
    • IsAnsiNullsEnabled: 如果在此数据库中 ANSI_NULLS 设置为 ON,则返回 1。
    • IsAutoClose: 如果在此数据库上启用了自动关闭,则返回 1。
    • IsAutoCreateStatistics: 如果在此数据库上为新对象创建统计信息,则返回 1。
    • IsAutoUpdateStatistics: 如果在此数据库上自动更新对象的统计信息,则返回 1。
    • IsCloseCursorsOnCommitEnabled: 如果在此数据库上启用了在提交事务时关闭游标的选项,则返回 1。
    • IsFulltextEnabled: 如果在此数据库上启用了全文搜索,则返回 1。
    • IsInStandBy: 如果是备用数据库,则返回 1。
    • IsMirroringEnabled: 如果在此数据库上启用了数据库镜像,则返回 1。
    • IsOffline: 如果数据库当前处于脱机状态,则返回 1。
    • IsParameterizationForced: 如果在此数据库上强制执行参数化,则返回 1。
    • IsReadCommittedSnapshotOn: 如果在此数据库上将 READ_COMMITTED_SNAPSHOT 设置为 ON,则返回 1。
    • IsRecursiveTriggersOn: 如果在此数据库上启用递归触发器,则返回 1。
    • IsSingleUser: 如果数据库处于单用户模式,则返回 1。
    • IsAutoShrink: 如果在此数据库上启用了自动收缩,则返回 1。
    • IsTornPageDetectionEnabled: 如果在此数据库上启用了页损坏检测,则返回 1。
    • IsVerifiedBackupEncryptionAlgorithm: 如果在此数据库上使用备份确认操作验证了加密算法,则返回 1。
    • IsBrokerEnabled: 如果在此数据库上启用了 Service Broker,则返回 1。
    • CatalogCollation: 返回数据库目录的排序规则名称。
    • CreateDate: 返回创建数据库的日期和时间。
    • DefaultFulltextCatalogName: 返回全文搜索的默认目录名称。
    • DefaultFileGroup: 返回数据库的默认文件组名称。
    • DefaultLanguageName: 返回数据库的默认语言名称。
    • DefaultSchemaName: 返回数据库的默认模式名称。
    • DefaultTicksPerHInMemoryStorage: 返回内存中存储数据的默认时钟周期数。
    • DefaultTicksPerHStorage: 返回硬盘存储数据的默认时钟周期数。
    • IndexSpaceUsage: 返回索引占用的空间。
    • LastBackupDate: 返回最后一次备份的日期和时间。
    • LastDifferentialBackupDate: 返回最后一次差分备份的日期和时间。
    • LastLogBackupDate: 返回最后一次日志备份的日期和时间。
    • Owner: 返回数据库所有者的名称。
    • PageVerify: 返回页验证级别(NONE, TORN_PAGE_DETECTION, CHECKSUM)。
    • PrimaryFilePath: 返回数据库主文件的完整路径和文件名。
    • Size: 返回数据库的总大小。
    • SpaceAvailable: 返回数据库的可用空间。
    • SpaceUsed: 返回数据库使用的空间。
    • TransactionLogSpaceUsage: 返回事务日志占用的空间。
示例
返回数据库的默认语言名称
SELECT DATABASEPROPERTYEX('AdventureWorks', 'DefaultLanguageName') AS DefaultLanguageName;

输出:

| DefaultLanguageName | |---------------------| | English |

返回数据库的总大小
SELECT DATABASEPROPERTYEX('AdventureWorks', 'Size') AS [Database Size];

输出:

| Database Size | |---------------| | 134.94 MB |

返回数据库中索引占用的空间
SELECT DATABASEPROPERTYEX('AdventureWorks', 'IndexSpaceUsage') AS [Index Space Used];

输出:

| Index Space Used | |------------------| | 65.62 MB |

总结

DATABASEPROPERTYEX()函数提供了一种非常简单和方便的方法来获取有关数据库的各种属性,可以让我们了解我们正在使用的数据库的状态和特征。