Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 此用于创建表的查询在dev上有效,但在live上无效_Sql_Sql Server 2005_Windows Server 2003_Sql Server 2012 - Fatal编程技术网

Sql 此用于创建表的查询在dev上有效,但在live上无效

Sql 此用于创建表的查询在dev上有效,但在live上无效,sql,sql-server-2005,windows-server-2003,sql-server-2012,Sql,Sql Server 2005,Windows Server 2003,Sql Server 2012,它在SQL Server 2005开发环境下工作,但在SQL Server 2012上不工作,并给出此错误 Msg 170,级别15,状态1,第3行第3行:附近语法不正确 “马克斯” 编辑 2012年实际上是2000年,但Network admin做了一些事情,以便我可以使用2012管理工具studio连接到它。出现此错误的原因是当用户尝试运行与以前版本的SQL Server不兼容的查询、过程或逻辑时。当SQL Server 2000升级到SQL Server 2005或SQL Server 2

它在SQL Server 2005开发环境下工作,但在SQL Server 2012上不工作,并给出此错误

Msg 170,级别15,状态1,第3行第3行:附近语法不正确 “马克斯”

编辑


2012年实际上是2000年,但Network admin做了一些事情,以便我可以使用2012管理工具studio连接到它。出现此错误的原因是当用户尝试运行与以前版本的SQL Server不兼容的查询、过程或逻辑时。当SQL Server 2000升级到SQL Server 2005或SQL Server 2008时,数据库对象兼容性也应升级到下一版本。当数据库兼容性设置为以前的版本,并且尝试使用较新版本的过程时,它们将抛出上述错误

修复/解决方法/解决方案:

使用以下命令更改数据库兼容性级别

USE [DatabaseName]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[TableName](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [URL] [varchar](max) NOT NULL,
    [User] [varchar](1000) NOT NULL,
    [Time] [datetime] NOT NULL,
 CONSTRAINT [PK_TableName] PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
SET ANSI_PADDING OFF

您的数据库的兼容性级别是否大于80?这意味着什么?我在一些帖子中读到,它应该是90,但我不确定它会对实时数据库产生什么影响。这意味着您有一个从SQL Server 2000恢复的数据库。(或使用兼容级别80创建)。这里描述了变化的影响:根据我的经验,变化的影响通常很小甚至没有。
EXEC sp_dbcmptlevel 'DatabaseName', 90