我想启用约束但不验证现有记录。仅验证db2中的未来记录。
这应该适用于检查约束。
alter table table_name add check (column_name <> '')
答案 0 :(得分:0)
DB2有检查约束的ENFORCED
和NOT ENFORCED
选项。约束的语法是CREATE TABLE和ALTER TABLE语句的一部分。子选项是根据数据质量设置TRUSTED
或NOT TRUSTED
。
以下内容应该有效:
alter table mytable add check (column1>myvalue) not enforced trusted
答案 1 :(得分:0)
尝试类似这样的事情
ALTER TABLE YOURLIB.YOURTABLE DROP CONSTRAINT YOURLIB.YOURCONSTRAINTNAME1;
ALTER TABLE YOURLIB.YOURTABLE ADD CONSTRAINT YOURLIB.YOURCONSTRAINTNAME1 CHECK (YOUCOLUMNNAME<>'') NOT ENFORCED TRUSTED;