Ошибка SQL со скриптом для создания - PullRequest
4 голосов
/ 16 апреля 2009

Я использовал студию управления SQL Server на столе с Create Script to New и сделал небольшие изменения. Дайте мне ошибку "Неверный синтаксис рядом с" ('"для" ("после" С "

/* 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

1 Ответ

5 голосов
/ 16 апреля 2009

С какой версией 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 2000 productversion равен 8.x.

MS SQL Server 2005 productversion равен 9.x.

MS SQL Server 2008 productversion равен 10.x.

...