MySQL Datenbank "Integrity constraint violation" trotz Backup

Pfandfinder

Lieutenant
Registriert
Nov. 2020
Beiträge
722
hallo,

bin am verzweifeln. habe eine Mysql Datenbank auf meinem vps wo ich vor 14 Uhr noch dran gearbeitet habe mit meinem PHP-script was Daten darin anlegt. das funktioniert(e) PROBLEMLOS die ganze Zeit. wollte dann manuell aus einer Tabelle einen Datensatz löschen - ging nicht wegen einem FK oder so. hab dann ewig versucht mit der KI das Problem zu lösen und Befehle ausgeführt, u.a. auch was mit "CASCADE". da mein Server regelmäßig Dumps macht dachte ich ich kann ja nix verlieren. da das dann immer noch nicht zu löschen ging dachte ich egal, ich spiel jetzt das Backup ein und mache das anders.

Backup eingespielt, und mein php-script was seit Wochen unverändert ist geht nicht mehr :

Code:
Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`user1_db1`.`custom_abrechnung`, CONSTRAINT `fk_abrechnung_vorgangnr` FOREIGN KEY (`vorgangnr`) REFERENCES `custom_vorgaenge` (`id`) ON DELETE SET NULL ON UPDATE CASCADE)

Ich verstehe es nicht, es ist alles in einem Stand von vor meiner Spielerei (selbst das PHP-script hab ich mal wiederhergestellt ), wo noch alles funktioniert hat! Selbst wenn ich ältere Backups einspiele kommts zu dem Fehler. auch wenn ich eine komplett neue Datenbank anlege, einen älteren Dump darin einspiele und eben diese Logindaten der neuen DB verwende kommt der Fehler.

Weiß jemand weiter was das sein kann ?!
 
FOREIGN KEY (vorgangnr) REFERENCES custom_vorgaenge (id)
Du gibst vermutlich ein Vorgang mit einer "vorgangnr" an, den es in "custom_vorgaenge" nicht gibt.

Wie sieht dein insert/update Query denn aus?
 
  • Gefällt mir
Reaktionen: madmax2010
Schema (SHOW CREATE TABLE) der Tabellen custom_abrechnung und custom_vorgaenge wären zusätzlich ganz hilfreich...

Wenn du mysql per Terminal benutzt hast findet sich die Befehlshistorie ja noch in deiner .bash_history und der .mysql_history von dir oder root. Oder notfalls im Chat mit der KI. Vielleicht wurden mit einem Befehl globale Server-Variablen verändert.
 
  • Gefällt mir
Reaktionen: tRITON
Zurück
Oben