`
wb284551926
  • 浏览: 556632 次
文章分类
社区版块
存档分类
最新评论

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

 
阅读更多

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

情况场景:

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

可能原因:

1.

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

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

eg.创建A表

创建B表

向A表插入数据

向B表插入数据

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

 

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

 

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

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

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

分享到:
评论

相关推荐

    违反完整性约束 未找到父项关键字

    ### 违反完整性约束——未找到父项关键字 在数据库管理与操作过程中,经常会遇到一些因为数据一致性问题而引发的错误。其中一种常见的错误便是“违反完整性约束——未找到父项关键字”,这种错误通常出现在尝试向...

    ORA-02298: 无法验证 (约束)提示未找到父项关键字的解决办法

    在Oracle数据库中,当尝试插入或更新数据时,如果遇到`ORA-02298: 无法验证 (约束) - 未找到父项关键字`的错误,这意味着你正在尝试在一个具有外键约束的表中插入的数据违反了该约束。这个错误通常发生在你试图将一...

    oracle常见错误号

    12. ORA-02291:integrity constraint (约束名) violated - parent key not found - 违反外键约束,父表中缺少相应的主键记录。插入或更新数据时确保满足引用完整性。 13. ORA-02292:integrity constraint ...

    Oracle 错误代码整理总结

    ORA-00001:违反唯一约束条件(主键错误) ORA-00028:无法连接数据库进程 ORA-00900:无效sql语句 ORA-00904:字段名写错或是建表时最后一个字段有逗号 ORA-00907:缺少右括号 ORA-00911:无效字符 ORA-00917:...

    oracle 错误码大全

    - **解决方案**:检查SQL语句是否违反了完整性约束,如外键约束等。 #### ORA-02005: (-1)ȶ͵Ķ͸ֵЧ - **描述**:无效的参数值。 - **解决方案**:检查提供的参数值是否符合要求。 #### ORA-02006: ЧѹʮƸʽ...

    oracle错误手册 pdf

    - **ORA-00001:违反唯一约束条件** - **描述**:当尝试插入重复的唯一键值时触发。 - **解决方案**:检查唯一索引定义,确保新插入的数据不包含重复值。 - **ORA-00017:请求会话以设置跟踪事件** - **描述**:...

    oracle错误码大全

    #### ORA-00001: 违反唯一约束条件 **描述**: 当尝试插入或更新一个已经存在的唯一键值时触发此错误。确保数据符合唯一性约束。 **解决方法**: - 检查并修改数据,确保不会重复插入相同的数据行。 - 使用`ALTER ...

    oracle异常处理

    以下是一个使用非预定义异常处理 `ORA-02291`(违反完整性约束)的例子: ```sql DECLARE e_integrity EXCEPTION; PRAGMA EXCEPTION_INIT(e_integrity, -2291); BEGIN UPDATE emp SET deptno = &dno WHERE empno ...

    Oracle更新数据和删除数据.pdf

    这会引发 `ORA-00001: 违反唯一约束条件` 错误,因为新的 `EMPNO` 值已经存在于表中。 接下来是数据的删除操作。`DELETE` 语句用于从表中移除特定的行。例如,删除 `ENAME` 为 `'ATG'` 的记录,可以这样写: ```...

    Oracle 10g Error Messages

    - **数据完整性错误**:如ORA-00001(唯一性约束违反),当试图插入或更新违反唯一性约束的数据时会出现。 - **权限错误**:如ORA-01031(权限不足),表示执行某操作时用户没有足够的权限。 - **网络连接问题**...

    数据库阶段考试.pdf

    `,并给出了错误信息:`ORA-02292:违反完整约束条件(HR.EMP_DEPT_FK)-已找到子记录日志`。需要找出导致这个错误的原因。 2. **选项分析**: - A. `where条件语法错误`:这里的语法是正确的,因此不是问题所在。 - ...

    oracle 10g 管理 sql 错误解决

    这类错误需要检查插入或更新的数据是否符合约束条件,或者考虑是否需要调整约束设置。 5. **表和索引问题**:索引损坏、表空间满或者表被锁定都可能导致SQL错误。定期运行DBMS_UTILITY ANALYZE_SCHEMA可以检测索引...

    2009达内SQL学习笔记

    oerr ora 904 :查看错误 set head off :去掉表头 set feed off :去掉表尾 保存在oracle数据库中的所有操作细节: spool oracleday01.txt :开始记录 spool off :开始保存细节 四、SELECT语句:选择操作...

    ORACLE文档--Database Error Messages

    例如,“ORA-00001”表示“唯一约束违反”,意味着尝试插入的数据违反了表中的唯一性约束条件。这些错误代码按照错误类型和严重程度进行了分类,使得查找和理解变得更为便捷。 ### 如何利用错误消息进行故障排除 1...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

     删除HKEY_CLASSES_ROOT目录下所有以Ora、Oracle、Orcl或EnumOra为前缀的键。  删除HKEY_CURRENT_USER/SOFTWARE/Microsoft/windows/CurrentVersion/Explorer/MenuOrder/Start Menu/Programs中所有以oracle 开头...

Global site tag (gtag.js) - Google Analytics