新聞中心
mysql為什么會添加外鍵錯誤?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
mysql添加外鍵錯誤的原因:1、外鍵的字段與關(guān)聯(lián)字段的類型不匹配;2、外鍵名重復(fù);3、外鍵沒有建立索引;4、外鍵存在默認(rèn)值;5、語法錯誤。
原因分析:
第一種情況:外鍵的字段與關(guān)聯(lián)的字段的類型不匹配(包括編碼格式的不匹配)
第二種情況:外鍵的名字是一個已經(jīng)存在的鍵值,要保證名字的唯一
第三種情況:mysql引擎引起的外鍵創(chuàng)建不能保存或者不能發(fā)揮作用的情況,mysql一般的默認(rèn)引擎是myisam,而myisam是不能創(chuàng)建外鍵的。
第四種情況:試圖創(chuàng)建的一個外鍵沒有建立起索引,或者不是一個primary key 并且如果其中不是一個primary key,你必須為他創(chuàng)建一個索引。
第五種情況:外鍵的動作設(shè)置成on delete set null 或者 on update set null,但是在關(guān)聯(lián)的表的字段又設(shè)置的no null,導(dǎo)致沖突。
第六種情況:在navicat設(shè)定的表格主鍵中 有 主鍵1,主鍵2,主鍵3,的區(qū)別,主鍵1不能被級聯(lián)更新(刪除)(CASCADE)
第七種情況:外鍵存在默認(rèn)值,引起的沖突
第八種情況:混合鍵值缺少索引引起的情況,需要為他單獨(dú)申請索引
第九種情況:在sql語句創(chuàng)建外鍵時,create 或者 alter語法錯誤
感謝各位的閱讀!看完上述內(nèi)容,你們對mysql為什么會添加外鍵錯誤大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。
網(wǎng)頁題目:mysql為什么會添加外鍵錯誤-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://ef60e0e.cn/article/csjjps.html