2012-10-11 22 views
3

我想了解是否低于SQL最好的描述的情况是跆拳道或某种形式的黑客攻击:有任何理由FK一个PK列本身

alter table CORE_FIELD 
add constraint R_106 foreign key (CO_FIELD_ID) 
references CORE_FIELD (CO_FIELD_ID) on delete set null; 

数据库:Oracle 11.2。 0.1

+4

可能是一个WTF。 –

回答

2

我想不出有什么有意义的事情可以通过这样的约束来实现。显然,约束总是会被满足,所以它不能提供完整性功能。我有一个想法,也许这是一种防止删除的方法,但在我的实验中并没有这样做。

+0

我的想法是,当行被删除时,它可能是试图获取UPDATE触发器,但我做了一些测试,发现删除某行时未触发UPDATE触发器(BEFORE或AFTER)。 (有道理,但直到你尝试:-)时你才会知道。 –