[英]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.