4

我在带有 Create Script to New 的表上使用了 SQL Server 管理工作室,并做了一些小的改动。给我一个错误“'('”附近的语法不正确,用于“WITH”之后的“(”)

/* EventType Table Creation */

CREATE TABLE [EventType]
(
 [pkEventID]  [int] IDENTITY(1,1) NOT NULL,
 [Description] [nvarchar](50) NOT NULL,
 [BeginDate]  [datetime] NOT NULL,
 [EndDate]  [datetime] NOT NULL,
 [Comments]  [nvarchar](500) NOT NULL,
 CONSTRAINT [PK_EventType] PRIMARY KEY 
 CLUSTERED 
 (
 [pkEventID] 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
4

1 回答 1

5

您针对哪个版本的 Microsoft SQL Server 执行此CREATE TABLE语句?根据文档,MS SQL Server 2000 无法识别WITH (...index options...). MS SQL Server 2005 及更高版本支持该语法。

即使您使用 SQL Managment Studio 2005,您也可能连接到 MS SQL Server 2000。要验证版本,请尝试以下查询:

SELECT  SERVERPROPERTY('productversion'), 
  SERVERPROPERTY ('productlevel'), 
  SERVERPROPERTY ('edition');

MS SQL Server 2000productversion是 8.x。

MS SQL Server 2005productversion是 9.x。

MS SQL Server 2008productversion是 10.x。

于 2009-04-15T20:54:47.687 回答