运行数据库脚本时出错

时间:2013-07-03 04:16:23

标签: sql-server-2005 sql-server-2008-r2

我从SQL Server 2008 R2生成我的数据库脚本(脚本=架构和数据的数据类型)并在SQL Server 2005中运行此脚本,它向我显示了这些错误:

  

Msg 102,Level 15,State 1,Line 1
  '100'附近的语法不正确。

     

Msg 102,Level 15,State 6,Line 1
  'HONOR_BROKER_PRIORITY'附近的语法不正确。

     

Msg 2812,Level 16,State 62,Line 1   找不到存储过程'sys.sp_db_vardecimal_storage_format'。

在1号线,1号线

ALTER DATABASE [MYDATABASE] SET COMPATIBILITY_LEVEL = 100

在第6行,第1行

ALTER DATABASE [MYDATABASE] SET HONOR_BROKER_PRIORITY OFF

在第62行,第1行

EXEC sys.sp_db_vardecimal_storage_format N'MYDATABASE', N'ON' 

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

ALTER DATABASE [MYDATABASE] SET COMPATIBILITY_LEVEL = 100

SQL Server 2005还没有此命令 - SQL Server 2008的新功能。

你需要改用它:

EXEC sp_dbcmptlevel AdventureWorks, 90;

等级90 = SQL Server 2005 - 这将起作用;级别100是SQL Server 2008,在SQL Server 2005中显而易见.......

ALTER DATABASE [MYDATABASE] SET HONOR_BROKER_PRIORITY OFF
EXEC sys.sp_db_vardecimal_storage_format N'MYDATABASE', N'ON' 

这些都是SQL Server 2008或更高版本中的新功能,并且在SQL Server 2005中没有任何等效项。不支持(也不需要)vardecimal存储格式SQL Server 2005。