[英]Foreign Key “can not add or update a child row”
首先,我同時使用LibreBase和phpmyadmin
簡而言之,我有2個表,一個學生表和一個學生反饋表
Student contains:
StudentUserID(primary key) type=int(11) Null=no Default=none Extra=Auto_Increment
FirstName type=varchar(50) Null=Yes Default=Null
Surname type=varchar(50) Null=Yes Default=Null
StudentFeedback contains:
FeedbackID(primary key) type=int(11) Null=no Default=none Extra=Auto_Increment
Student(I think is foreign key) type=int(11) Null=Yes Default=Null
Feedback type=varchar(150) Null=no Default=none
現在我想發生的事情是,可以使用librebase上的表單創建一個學生,然后將該表單添加到表中,例如
1 Joe Bloggs, 2 Bill Gates, 3 Steve Jobs.
但是,我創建了另一個表單,然后將數據添加到反饋表中,以便Joe Bloggs或實際上Bill或Steve可以使用此表單在此處輸入用戶ID,然后在其中添加反饋。 我相信我可以做的各種查詢和報告將顯示這些數據。 當我嘗試通過librebase表單添加數據時,就會出現問題。 添加新學生的表格包括:
Firstname (textbook)
Surname (textbox)
但是,由於librebase拋出錯誤框,該數據不會輸入/輸入到表中
Error inserting the new record SQL Status: 23000 Error code: 1452 Cannot add or update a child row: a foreign key constraint fails >(`mydb`.`student`, CONSTRAINT `student_ibfk_1` FOREIGN KEY (`StudentUserID`) >REFERENCES `StudentFeedback` (`Student`) ON DELETE CASCADE ON UPDATE >CASCADE)
如果我嘗試將數據添加到創建的表單中以將反饋添加到StudentFeedback表中,則會出現相同的錯誤
抱歉,如果這幾乎沒有道理,我會很樂意回答您可能遇到的任何問題。
創建外鍵時,必須提供引用屬性: ON UPDATE CASCADE ON DELETE CASCADE
請檢查引用屬性。
現在,我已經解決了問題,我有一個約束輸入或某些數據的約束,因此使用sql查詢查看我的所有數據庫約束,然后使用另一個查詢刪除相關約束。 之后,就像添加外鍵一樣簡單,確保我在刪除級聯上使用更新級聯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.