2013-04-10 147 views
2

我想在SQL Server 2008中做一个简单的创建表并接收语法错误。 我使用的是Microsoft SQL Server Management Studio中>新建查询SQL Server 2008创建表语法错误

下面是语法:

CREATE TABLE Address 
{ 
    AddressID int IDENTITY PRIMARY KEY, 
    Street varchar(60) NULL, 
    City varchar(50) NULL, 
    State varchar(2) NULL, 
    Zip varchar(10)NULL, 
    Intersection1 varchar(60) NULL, 
    Intersection2 varchar(60) NULL 
} 

和错误消息:

消息102,级别15,状态1,行2
'{'附近的语法不正确。

根据在线发现的示例,语法似乎是准确的。创建此表的正确语法是什么?

+0

删除最后,请从Intersection2 VARCHAR(60)NULL, – Satya 2013-04-10 06:31:13

+0

@Satya在TSQL中是允许的。 – 2013-04-10 06:32:25

回答

9

使用(){ }

CREATE TABLE Address 
(
    AddressID int IDENTITY PRIMARY KEY, 
    Street varchar(60) NULL, 
    City varchar(50) NULL, 
    State varchar(2) NULL, 
    Zip varchar(10)NULL, 
    Intersection1 varchar(60) NULL, 
    Intersection2 varchar(60) NULL, 
) 
+0

非常感谢J W教这个新东西 – Satya 2013-04-10 06:38:49

+0

但是在'MySQL'中它会产生语法错误':)'hehe – 2013-04-10 06:39:13

2

您需要使用(),而不是{}

CREATE TABLE Address 
(
    AddressID int IDENTITY PRIMARY KEY, 
    Street varchar(60) NULL, 
    City varchar(50) NULL, 
    State varchar(2) NULL, 
    Zip varchar(10)NULL, 
    Intersection1 varchar(60) NULL, 
    Intersection2 varchar(60) NULL 
) 

还要去掉最后,

0

这是在SQL Server中创建表2008语法:

CREATE TABLE table_name 
(
column_name1 data_type(size), 
column_name2 data_type(size), 
column_name3 data_type(size), 
.... 
); 
0

你要使用第一架

CREATE TABLE Address 
(
    AddressID int IDENTITY PRIMARY KEY, 
    Street varchar(60) NULL, 
    City varchar(50) NULL, 
    State varchar(2) NULL, 
    Zip varchar(10)NULL, 
    Intersection1 varchar(60) NULL, 
    Intersection2 varchar(60) NULL 
)