2014-10-20 35 views
0

我有以下錯誤:錯誤附近的語法時才「(」在SQL服務器

Msg 170, Level 15, State 1, Line 9 Line 9:
Incorrect syntax near '('.

我的SQL是:

USE [dbname] 
GO 

/****** Object: Table [dbo].[table_name] Script Date: 10/20/2014 16:41:41 ******/ 
SET ANSI_NULLS ON 
GO 

SET QUOTED_IDENTIFIER ON 
GO 

CREATE TABLE [dbo].[table_name] 
(
    [ID] [int] NOT NULL, 
    [sth] [nvarchar](200) NULL, 
    [list] [smallint] NULL, 

    CONSTRAINT [PK_table_name] 
     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 

可惜我看不到任何錯誤而且劇本由SQL Server Management Studio生成(點擊表 - >腳本表作爲 - >創建爲 - >新查詢窗口),因爲我想將表格設置爲另一個表格。

查詢中是否有錯誤,或者可能不足造成的特權(我沒有記錄爲數據庫所有者或系統管理員,我可以通過單擊表目錄上的「新表」來創建新表)。

編輯:

我使用SQL Server Management Studio中2008 R2和服務器是Microsoft SQL Server 2000中 - 8.00.2187。

EDIT2:

我試圖執行由MS SQL Server Management Studio中2008 R2中的SQL Server 2000上據我瞭解生成的腳本。

+0

它適用於[SQL-Server 2012](http://sqlfiddle.com/#!6/3dc50/1/0)和[2008](http://sqlfiddle.com/#!3/ 3dc50/1/0)。 – 2014-10-20 14:59:39

+0

也適用於此... – Darka 2014-10-20 15:00:32

+3

確認您沒有隱形字符,例如意外鍵入的Shift-Space將作品塗膠。複製粘貼來自此頁面的代碼以進行驗證。 – 2014-10-20 15:01:25

回答

2

嘗試

CREATE TABLE table_name 
(
    ID int NOT NULL, 
    sth nvarchar(200) NULL, 
    list smallint NULL, 

    CONSTRAINT PK_table_name PRIMARY KEY (ID) 
) 

這忽略所有特殊語法和特殊WITH選項(即都被賦予默認反正)。此語法被我熟悉的SQL Server的所有版本和版本所接受。如果這樣做,你的問題是版本不匹配。如果這不起作用,那麼你的問題可能完全是完全不同的。