oracle – 创建约束时,Exceptions into子句不起作用

我使用的是Oracle 11g.
我有一张桌子:
create table test (one number(2),two number(2));

共有2行:

insert into test (one,two) values (1,1);
insert into test (one,two) values (2,null);
commit;

现在我创建一个例外表:

create table exceptions(row_id rowid,owner varchar2(30),table_name varchar2(30),constraint varchar2(30));

现在我想创建测试的主键:

alter table test add constraint test_pk primary key (one,two) exceptions into exceptions;

当然我收到以下错误:ORA-01449

但导致异常的行不在异常表中?

有谁能够帮我.提前致谢

沃尔夫冈

为此,您必须首先创建禁用的约束:
ALTER TABLE test ADD CONSTRAINT test_pk PRIMARY KEY (one,two) disABLE;

然后,启用具有异常的约束:

ALTER TABLE TEST ENABLE CONSTRAINT test_pk EXCEPTIONS INTO exceptions;

然后你可以选择结果:

sql> SELECT * FROM EXCEPTIONS;

ROW_ID             OWNER TABLE_NAME CONSTRAINT
------------------ ----- ---------- ----------
AahpV4AAHAAApliAAB XXX   TEST       TEST_PK

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...