Hopes

Start Here..

 

ORA-02291: 违反完整约束条件 - 未找到父项关键字 (有外键的情况下,插入记录)

ORA-02291: 违反完整约束条件 - 未找到父项关键字

分类: oracle
2012-01-16 23:43 1122人阅读 评论(2) 收藏 举报

总体说说可能出现的原因:

情况场景:

表A中有个字段是外键,关联了表B中的某字段,再往表A插入数据时,会出现这种情况。

可能原因:

1.
插入的数据 如果某个字段是外键 那么该值要么为空 要么在主键表中 有对应的主键值 否则 就不满足参照完整性约束

所以你肯定插入了 不存在的主键值 所以产生了这个错误



eg.创建A表



创建B表



向A表插入数据



向B表插入数据



向B 表中插入数据,B表中某个字段(外键)在A表(主表)中没有值:2没在主表中





向B 表中插入数据,B表中某个字段(外键),值为空的情况;





2.产生了外键环,就是B表中被外键关联的字段又关联了C表中的字段,而C中相应字段却没有数据,则产生这种情况。

3.如果不是上两种情况,那么就是一个非常容易疏忽的问题:A中的外键字段和B中的被外键关联字段数据类型和长度不一致。特别是数据长度,必须要一致。

第三种情况是最容易忽略的,希望大家注意。

posted on 2012-09-12 16:42 ** 阅读(1747) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

公告

你好!

常用链接

留言簿(2)

随笔档案

文章分类

文章档案

新闻档案

相册

收藏夹

C#学习

友情链接

搜索

最新评论

阅读排行榜

评论排行榜