Hopes

          Start Here..

           

          ORA-02291: 違反完整約束條件 - 未找到父項關鍵字 (有外鍵的情況下,插入記錄)

          ORA-02291: 違反完整約束條件 - 未找到父項關鍵字

          分類: oracle
          2012-01-16 23:43 1122人閱讀 評論(2) 收藏 舉報

          總體說說可能出現(xiàn)的原因:

          情況場景:

          表A中有個字段是外鍵,關聯(lián)了表B中的某字段,再往表A插入數(shù)據(jù)時,會出現(xiàn)這種情況。

          可能原因:

          1.
          插入的數(shù)據(jù) 如果某個字段是外鍵 那么該值要么為空 要么在主鍵表中 有對應的主鍵值 否則 就不滿足參照完整性約束

          所以你肯定插入了 不存在的主鍵值 所以產(chǎn)生了這個錯誤



          eg.創(chuàng)建A表



          創(chuàng)建B表



          向A表插入數(shù)據(jù)



          向B表插入數(shù)據(jù)



          向B 表中插入數(shù)據(jù),B表中某個字段(外鍵)在A表(主表)中沒有值:2沒在主表中





          向B 表中插入數(shù)據(jù),B表中某個字段(外鍵),值為空的情況;





          2.產(chǎn)生了外鍵環(huán),就是B表中被外鍵關聯(lián)的字段又關聯(lián)了C表中的字段,而C中相應字段卻沒有數(shù)據(jù),則產(chǎn)生這種情況。

          3.如果不是上兩種情況,那么就是一個非常容易疏忽的問題:A中的外鍵字段和B中的被外鍵關聯(lián)字段數(shù)據(jù)類型和長度不一致。特別是數(shù)據(jù)長度,必須要一致。

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

          posted on 2012-09-12 16:42 ** 閱讀(1749) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          導航

          統(tǒng)計

          公告

          你好!

          常用鏈接

          留言簿(2)

          隨筆檔案

          文章分類

          文章檔案

          新聞檔案

          相冊

          收藏夾

          C#學習

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 彰化县| 龙陵县| 崇文区| 德兴市| 萝北县| 铜梁县| 育儿| 高安市| 晴隆县| 马山县| 汉中市| 汾阳市| 怀化市| 巫溪县| 开江县| 兴业县| 武鸣县| 邓州市| 志丹县| 仁化县| 灵寿县| 彭阳县| 襄樊市| 鹤岗市| 长治市| 安龙县| 神农架林区| 交口县| 青海省| 滨州市| 汾西县| 桂平市| 信阳市| 贵州省| 合作市| 汝州市| 射洪县| 丰顺县| 汉阴县| 青川县| 千阳县|