我在使用SQL ALTER语句创建列时遇到问题。我对SQL很新手,所以任何指导都会很棒。我正在使用SQL Sever 2008,我收到一条错误,指出该列无法添加到表中,因为它不允许空值,也没有指定默认定义。我已经在表中有数据,我只是想添加一个增量主键。
这是我用来生成列的SQL
ALTER TABLE EPUpdates.GenInfo_OpType3
ADD KeyOpType Integer NOT NULL
这是我用来使其成为主键/标识列的SQL
ALTER TABLE EPUpdates.GenInfo_OpType3
ADD PRIMARY KEY(KeyOpType)
答案 0 :(得分:1)
尝试向列中添加默认值,但如果要将其作为主键,则每行的值必须不同,因此在创建新列之后和创建之前必须更新这些值。主要指数。
ALTER TABLE EPUpdates.GenInfo_OpType3
ADD KeyOpType Integer NOT NULL Default 0
答案 1 :(得分:0)
如果您尝试添加增量主键,请尝试使用
ALTER TABLE EPUpdates.GenInfo_OpType3
ADD KeyOpType INT NOT NULL IDENTITY (1,1) PRIMARY KEY