跳到主要内容
内容阅读

在知识库中专注阅读,并随时返回相关工具与课程

ORA-02291常见约束

违反完整性约束 - 未找到父键

Integrity constraint violated - parent key not found

错误描述

子表上的 INSERT 或 UPDATE 引用了父表中不存在的外键值。

可能原因

  • 插入子记录时外键值在父表中不存在
  • 父记录在子记录插入前被删除
  • 数据加载顺序错误(先加载子表再加载父表)

解决方案

  1. 1先插入父记录,再插入子记录
  2. 2验证外键值在父表中存在
  3. 3批量加载时临时禁用约束:ALTER TABLE child DISABLE CONSTRAINT fk_name;

诊断命令

SELECT constraint_name, r_constraint_name, table_name FROM dba_constraints WHERE constraint_type = 'R' AND table_name = 'CHILD_TABLE';
SELECT column_name FROM dba_cons_columns WHERE constraint_name = 'FK_NAME';
#foreign-key#constraint#parent#referential-integrity

同类错误码(约束)

想系统掌握这个领域?

「约束」在课程 Day 81-90 中有 10 篇完整实战教程

完整操作步骤真实截图踩坑总结
查看完整课程¥128/月起 · 解锁全部 2738+ 篇
ORA-02291: 违反完整性约束 - 未找到父键 - 原因与解决方案 | DBA 学习之路