簡體   English   中英

在C#代碼中執行SQL語句會產生錯誤“關鍵字'ON'附近的語法不正確”

[英]Executing an SQL statement inside c# code gives error “Incorrect syntax near the keyword 'ON'”

我擁有的代碼非常簡單:

SqlCommand command = new SqlCommand("CREATE TABLE [dbo].[ClientData]([ClientDataID] [int] IDENTITY(1,1) NOT NULL,[SessionID] [char](24) NOT NULL,[Browser] [varchar](20) NOT NULL,[IP] [varchar](20) NOT NULL,[OperatingSystem] [varchar](30) NOT NULL,CONSTRAINT [PK_SessionData] PRIMARY KEY CLUSTERED([ClientDataID] ASC)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY] ON [PRIMARY]");            
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    command.Connection = connection;
    command.ExecuteNonQuery();
}

執行后,出現此錯誤:

關鍵字“ ON”附近的語法不正確

該查詢是由MS SQL 2008生成的,我只是照原樣復制了它。 有人可以告訴我為什么這行不通嗎?

謝謝。

您有兩次ON [PRIMARY]權限,但只能列出一次。

在SqlCommand中使用此腳本。

創建表[dbo]。[ClientData]([ClientDataID] [int] IDENTITY(1,1)NOT NULL,[SessionID] char NOT NULL,[Browser] varchar NOT NULL,[IP] varchar NOT NULL,[OperatingSystem] varchar不為空,CONSTRAINT [PK_SessionData]主鍵已聚集([ClientDataID] ASC)(PAD_INDEX = OFF,STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON,ALLOW_PAGE_LOCKS = ON)ON [PRIMARY])

不知道您是否正在尋找!

CREATE TABLE [dbo].[ClientData]
(
[ClientDataID] [int] IDENTITY(1,1) 
NOT NULL,[SessionID] [char](24) NOT NULL,
[Browser] [varchar](20) NOT NULL,
[IP] [varchar](20) NOT NULL,
[OperatingSystem] [varchar](30) NOT NULL,
CONSTRAINT [PK_SessionData] 
PRIMARY KEY CLUSTERED([ClientDataID] ASC)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON)
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM