2016-05-31 10 views
0

Ich versuche, meine employees Tabelle zu aktualisieren, aber wenn ich versuche, erhalte ich diesen Fehler über foreign key.MYSQL-FEHLER - Hinzufügen oder Aktualisieren einer untergeordneten Zeile nicht möglich: eine Fremdschlüsseleinschränkung schlägt fehl

# 1452 - Es kann kein Kind Zeile hinzufügen oder aktualisieren: ein Fremdschlüssel fehlschlägt (`hrms`.`employees`, CONSTRAINT` Fk_Employee_Sections` FOREIGN KEY (`section`) LITERATUR` master_sections` (`id`) ON NULL DELETE SET ON UPDATE CASCADE)

Hier ist mein Code

UPDATE employees e 
JOIN testsection t 
ON(e.employee_id = t.epfno) 
SET e.section = t.id 

Dann versuche ich diesen Code, aber es funktioniert immer noch nicht.

set foreign_key_checks=0 
UPDATE employees e 
JOIN testsection t 
ON(e.employee_id = t.epfno) 
SET e.section = t.id 
set foreign_key_checks=1 

Was kann der Grund sein?

Antwort

2

Nun versuchen Sie, die untergeordnete Zeile section Ihrer employees Tabelle zu aktualisieren. So weit, so gut, aber Sie versuchen, einen Wert aus der Tabelle testsection zu schreiben. Das wird nicht funktionieren, da die Referenz auf die id-Spalte Ihrer master_sections Tabelle zeigt. Die section-Spalte akzeptiert nur Werte, die in der id-Spalte Ihrer master_sections-Tabelle enthalten sind. Sonst wird es scheitern.

Verwandte Themen