sp_dbcmptlevel (Transact-SQL)
适用于:SQL Server
将某些数据库行为设置为与指定的 SQL Server 版本兼容。
重要
在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 请改用 ALTER DATABASE (Transact-SQL) 兼容性级别 。
语法
sp_dbcmptlevel
[ [ @dbname = ] N'dbname' ]
[ , [ @new_cmptlevel = ] new_cmptlevel OUTPUT ]
[ ; ]
参数
[ @dbname = ] N'dbname'
要更改兼容级别的数据库的名称。 数据库名称必须符合标识符的规则。 @dbname为 sysname,默认值为 NULL
.
[ @new_cmptlevel = ] new_cmptlevel OUTPUT
要使数据库与之兼容的 SQL Server 版本。 @new_cmptlevel是 tinyint 类型的 OUTPUT 参数,必须是下列值之一:
90
= SQL Server 2005 (9.x)100
= SQL Server 2008 (10.0.x)110
= SQL Server 2012 (11.x)120
= SQL Server 2014 (12.x)130
= SQL Server 2016 (13.x)140
= SQL Server 2017 (14.x)150
= SQL Server 2019 (15.x)160
= SQL Server 2022 (16.x)
返回代码值
0
(成功)或 1
(失败)。
结果集
如果未指定任何参数,或者 未指定@dbname 参数, sp_dbcmptlevel
则返回错误。
如果未指定@new_cmptlevel@dbname,数据库引擎将返回显示指定数据库的当前兼容级别的消息。
注解
有关兼容性级别的说明,请参阅 ALTER DATABASE (Transact-SQL) 兼容性级别。
权限
只有数据库所有者、sysadmin 固定服务器角色的成员和db_owner固定数据库角色(如果要更改当前数据库)才能执行此过程。