-3

我在使用 SQL ALTER 语句添加 NOT NULL 列时遇到问题。我对 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)
4

2 回答 2

1

尝试为您的列添加默认值,但如果要将其作为主键,则每行的值必须不同,因此您必须在创建新列之后和创建主索引之前更新这些值。

ALTER TABLE EPUpdates.GenInfo_OpType3
ADD KeyOpType Integer NOT NULL Default 0
于 2013-05-10T12:24:22.430 回答
0

如果您尝试添加增量主键,请尝试此操作

ALTER TABLE EPUpdates.GenInfo_OpType3
ADD KeyOpType INT NOT NULL IDENTITY (1,1) PRIMARY KEY
于 2013-05-10T12:28:54.683 回答