2016-01-23 137 views
0

我正在嘗試將我的新模式轉發到我的數據庫服務器上,但我無法弄清楚爲什麼我會收到此錯誤。我試圖在這裏搜索答案,但沒有嘗試過。MySQL錯誤1215:無法添加外鍵約束

這是當我試圖正向工程我的新架構到我的DB服務器我得到的錯誤: image

+1

發佈涉及其他表的結構 – Rahul

回答

0

幾件事情可能會導致一個問題:

1)檢查的數據類型是studentnummerstudent表中的列和vakID中的vakklas - 它們是INTVARCHAR(45)
2)檢查輸入錯誤 - 是否引用的表和列的名稱與此CREATE語句中的方式相同?
3)檢查studentvakklas已經有一些行違反NOT NULL條件 - 是否有一個記錄與NULL值在引用列?
4)你是否在所有表格中使用InnoDB?
5)你確定charset在所有桌子上都一樣嗎?這很重要,尤其是因爲您使用VARCHAR作爲外鍵。嘗試在ENGINE = InnoDB之後在表格創建的所有查詢中添加DEFAULT CHARSET=utf8 - 它可能會解決問題

+0

1.是我使用了INT和VARCHAR,是不正確的?我想是這樣,但我不確定。我不知道如何解決你提到的最後一點......我該怎麼辦? – Romy

+0

沒關係,如果它匹配。另外,請檢查VARCHAR是否爲45以及這些值上使用的字符集。 –

+0

好的,你能告訴我如何在這些值上使用字符集。我完全不知道該怎麼做。 – Romy

相關問題