您的位置:首页 > 数据库

SQL Server 2005调整兼容级别,存储过程:sp_dbcmptlevel

2010-03-24 20:36 281 查看
作用

将某些数据库行为设置为与指定的 SQL Server 的早期版本兼容。

语法

sp_dbcmptlevel [ [ @dbname = ] name ] [ , [ @new_cmptlevel = ] version ]

备注

在将数据库从 SQL Server 的任何早期版本升级到 SQL Server 2005 之后,该数据库将保留其现有的兼容级别。对于 SQL Server 2005 的所有安装,默认兼容级别均为 90。不能修改 master 数据库的兼容级别,但可以修改 model 数据库的兼容级别。这样您便可以用非默认兼容级别创建新数据库。包含索引视图的数据库的兼容级别不能更改为低于 80。 sp_dbcmptlevel 存储过程只影响指定数据库的行为,而不影响整个服务器的行为。sp_dbcmptlevel 只提供与 SQL Server 的早期版本的部分兼容性。将 sp_dbcmptlevel 用作中间迁移助手,可解决相关兼容级别设置所控制的行为之间存在的版本差异问题。如果现有 SQL Server 应用程序受到 SQL Server 2005 中的行为差异的影响,请将该应用程序进行转换,使之能正常运行。然后使用 sp_dbcmptlevel 将兼容级别更改为 90。数据库的新兼容性设置将在该数据库下次成为当前数据库(无论是在登录时作为默认数据库还是在 USE 语句中指定)时生效。

实例

将兼容级别更改为 SQL Server 2005 以下示例将 AdventureWorks 数据库的兼容级别更改为 90。

EXEC sp_dbcmptlevel 'AdventureWorks', '90';

GO


所以:在2005种恢复低版本数据库时,恢复完后应该作此设定

问题的出现

原来用的是sql2000,用powerdesigner12反向生成pdm物理数据模型,一切正常,驱动调到sql2000. 最近升级数据库到sql2005,再反向时,驱动调到sql2005,但是生成时总报错:"Unable to list the tables. [Microsoft][ODBC SQL Server Driver] 未能准备语句.SQLSTATE=37000 "
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: