CREATE TABLE Client(
ClientID INT(4) PRIMARY KEY NOT NULL,
FirstName VARCHAR(15),
LastName VARCHAR(15),
StreetAddress VARCHAR(25),
Suburb VARCHAR(15),
"State" VARCHAR(3),
Postcode INT (4),
PhoneNumber INT(10)
);
这是我得到的错误
Msg 2716,Level 16,State 1,Line 1
列,参数或变量#1:无法在数据类型int上指定列宽。
答案 0 :(得分:0)
你不应该写INT(4)
试试这个!
CREATE TABLE Client(
ClientID INT PRIMARY KEY NOT NULL,
FirstName VARCHAR(15),
LastName VARCHAR(15),
StreetAddress VARCHAR(25),
Suburb VARCHAR(15),
State VARCHAR(3),
Postcode INT, --should be varchar(10)
PhoneNumber INT -- should be varchar(12)
);
答案 1 :(得分:0)
INT数据类型没有宽度。
你必须写:
ClientID INT PRIMARY KEY NOT NULL
代替ClientID INT(4) PRIMARY KEY NOT NULL
答案 2 :(得分:0)
除了选择数据类型(将int中的邮政编码存储在美国但不在国际上工作,国际电话号码也可能存在问题),你似乎想要的是MySQL语法的直接映射,包括自动递增键(在TSQL中称为IDENTITY)
CREATE TABLE Client(
ClientID INT IDENTITY PRIMARY KEY NOT NULL,
FirstName VARCHAR(15),
LastName VARCHAR(15),
StreetAddress VARCHAR(25),
Suburb VARCHAR(15),
"State" VARCHAR(3),
Postcode INT,
PhoneNumber NUMERIC(10)
);