DB2中创建唯一约束问题
1. CREATE TABLE K_CONSTRAINT2(
K_IID INT,
K_INT SMALLINT,
K_FLOAT FLOAT,
K_CHAR CHAR(60)
);
2.ALTER TABLE K_CONSTRAINT2 ADD CONSTRAINT CONSTRAINT2 UNIQUE(K_INT);
错误提示:SQL0104N 在 "ter table K_CONS add" 之后发现意外的标记 "constraint
uniconstraint2 UNIQUE("。期望的标记可能包括:"<col_name>"。
而按照SQL标准,并不要求该列不能为NULL啊.我在SqlServer,Oracle上都试了,都没问题的.
DB2怎么不符合标准啊?
这样从其他数据库迁移表到DB2的时候,唯一约束肯定会出问题.哪位高手可以让第二条SQL语句正常执行呢?
问题点数:30、回复次数:2Top
1 楼bflovesnow()回复于 2006-07-04 09:31:23 得分 30
这个列必须为 NOT NULL 时才行.Top
2 楼ppxe310()回复于 2006-07-04 10:20:48 得分 0
不能有其他办法吗?
能不能在建完表后再将那列设置为NOT NULL?即在第二条SQL语句执行前再加一条:
ALTER TABLE K_CONSTRAINT2 ALTER K_INT SET NOT NULL ?
具体这条语句该如何写啊?
请指点,多谢!Top




