分享方式:


sp_dbcmptlevel (Transact-SQL)

適用於:SQL Server

將特定資料庫行為設定為與指定的 SQL Server 版本相容。

重要

SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 ALTER DATABASE (Transact-SQL) 相容性層級

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 則傳回錯誤。

如果未指定@dbname@new_cmptlevel,資料庫引擎 會傳回顯示指定資料庫目前相容性層級的訊息。

備註

如需相容性層級的描述,請參閱 ALTER DATABASE (Transact-SQL) 相容性層級

權限

只有資料庫擁有者、系統管理員固定伺服器角色的成員,以及db_owner固定資料庫角色(如果您變更目前資料庫)可以執行此程式。