2014-11-06 82 views
-2

我得到错误“无效的”,同时运行此ALTER TABLE语句:无效的ID在ALTER TABLE ADD COLUMN

ALTER TABLE TRUCK ADD COLUMN WEIGHT INTEGER NOT NULL; 

的语法是这样的,所以我不理解的错误:

ALTER TABLE table_name ADD COLUMN column_name data_type[NOT NULL][UNIQUE] 

属性WEIGHT不需要唯一。

如何将Integer数据类型的“不大于1000”包含到Alter语句中?

+4

你使用了哪个数据库? 'add'后有些不允许使用关键字'column'。 – 2014-11-06 16:42:00

+0

并且由于表格中没有列COLUMN,所以会出现此错误...或者,可能是因为卡车不存在?什么是确切的错误信息 - 复制并粘贴到你的问题(你可以编辑它) – Ben 2014-11-06 16:42:46

+0

@Ben我已经创建了表卡车,我只需要添加2列到表就是它。不知何故,我得到了错误“无效的标识符”,现在我得到了另一个错误>< – Preeyah 2014-11-06 16:51:50

回答

2

SQL服务器:

ALTER TABLE TRUCK 
ADD WEIGHT INT NOT NULL 
+0

嘿,我键入的声明,我有另一个错误:表必须为空添加强制性(NOT NULL)列..我不明白为什么这么说..为什么我必须删除其他列.. – Preeyah 2014-11-06 16:48:48

+0

尝试在它后面添加分号,我不确定数据库是否正确使用。编辑:它抱怨的是,在添加新行后,现有的行将没有赋值。最好的解决方案是跳过非空值,为现有行添加值,如果它确实是非空值,则稍后设置为非空值;如果值可能为空,但将其保留原样,否则你最终会头痛不已。 – user2366842 2014-11-06 16:49:45

+0

未添加“NOT NULL”作品。谢谢。 – Preeyah 2014-11-06 16:55:50

0

这个查询会有所帮助。

alter table truck 
    add column weight int not null default 0 check (weight < 1000)