1

我手动创建了一个表,然后选择了脚本表作为新查询并更改了表名并执行了查询。我收到错误消息

消息 170,级别 15,状态 1,第 12 行第 12 行:'(' 附近的语法不正确。

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE dbo.[KitCodeProperties](
[KitPropertiesId] [int] IDENTITY(1,1) NOT NULL,
[KitCodeName] [varchar](50) NULL,
[KitCodeDescription] [varchar](200) NULL,
[ShippingInstructions] [varchar](200) NULL,
[DepartmentId] [int] NULL,
[KitCodeActive] [bit] NULL,
CONSTRAINT [PK_KitCodeProperties] PRIMARY KEY CLUSTERED 
(
[KitPropertiesId] 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

SET ANSI_PADDING OFF
GO
4

1 回答 1

0

我把你的代码粘贴到我的 2012 开发者版中。使用和不使用 SET 命令创建表都没有问题。

因此,语法看起来不错。

您是在窗口的一部分上进行选择吗?

确保您没有在新查询窗口中选择任何内容,然后按 F5 将整个窗口作为一批执行。

如果这可行,那么您只突出显示了代码的一部分。

SSMS 代码的简化版本。

-- Remove old existing table
IF OBJECT_ID('[dbo].[KitCodeProperties]') > 0 
    DROP TABLE [dbo].[KitCodeProperties];

-- Create new table
CREATE TABLE [dbo].[KitCodeProperties]
(
    [KitPropertiesId] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED,
    [KitCodeName] [varchar](50) NULL,
    [KitCodeDescription] [varchar](200) NULL,
    [ShippingInstructions] [varchar](200) NULL,
    [DepartmentId] [int] NULL,
    [KitCodeActive] [bit] NULL,
);

精简版在 SQL Fiddler 中运行良好。

在此处输入图像描述

于 2013-09-30T15:46:01.060 回答