User löschen

Topics from older beta tests.
Antworten
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

User löschen

Beitrag von Offe »

Beim Löschen eines ehemaligen Users, erscheint bei mir folgender SQL Fehler
S Q L - E R R O R

CODE: 23000
1451

Cannot delete or update a parent row: a foreign key constraint fails ("testing"."adm_messages", CONSTRAINT "adm_FK_MSG_USR_SENDER" FOREIGN KEY ("msg_usr_id_sender") REFERENCES "adm_users" ("usr_id"))

B A C K T R A C E

FILE: adm_program/system/classes/database.php
LINE: 433
CALL: Database->showError()

FILE: adm_program/system/classes/tableaccess.php
LINE: 167
CALL: Database->query()

FILE: adm_program/system/classes/tableusers.php
LINE: 194
CALL: TableAccess->delete()

FILE: adm_program/modules/members/members_function.php
LINE: 162
CALL: TableUsers->delete()
Vermutlich, weil mit dem User verschiedene Emails und PM im Nachrichtenmodul verzeichnet sind.

Gruß Offe
Benutzeravatar
fasse
Administrator
Beiträge: 6052
Registriert: 12. Nov 2005, 16:06

Re: User löschen

Beitrag von fasse »

Hallo Offe,

der Fehler ist jetzt behoben. Kannst du das noch mal mit den aktuellen Commits ausprobieren.

Viele Grüße
Fasse
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: User löschen

Beitrag von Offe »

Hallo fasse,

der Fehler ist mit dem aktuellen Commit nicht komplett behoben, der SQL Error sieht nun wie folgt aus
S Q L - E R R O R

CODE: 23000
1451

Cannot delete or update a parent row: a foreign key constraint fails ("testing"."adm_messages_content", CONSTRAINT "adm_FK_MSC_MSG_ID" FOREIGN KEY ("msc_msg_id") REFERENCES "adm_messages" ("msg_id"))

B A C K T R A C E

FILE: adm_program/system/classes/database.php
LINE: 433
CALL: Database->showError()

FILE: adm_program/system/classes/tableusers.php
LINE: 186
CALL: Database->query()

FILE: adm_program/modules/members/members_function.php
LINE: 162
CALL: TableUsers->delete()
Versteh ich den Commit richtig, dass mit dem User auch die Nachrichten, die mit dem User ausgetauscht wurden gelöscht werden? Ist es sinnvoll, die Nachrichten zu löschen? Sollte man nicht die Nachrichten entsprechend bestehen lassen, sodass für User die Nachrichten als "Archiv" da sind?

Gruß Offe
Benutzeravatar
fasse
Administrator
Beiträge: 6052
Registriert: 12. Nov 2005, 16:06

Re: User löschen

Beitrag von fasse »

Hallo Offe,

ja, momentan werden die Nachrichten gelöscht. Finde ich aber auch ganz gut. Wenn ein User gelöscht wird, dann soll auch seine Kommunikation raus. Ansonsten kann man ihm zum Ehemaligen machen.

Den Fehler bekomme ich nicht nachgestellt. Habe gerade einen User mit Email und PM-Konversation gelöscht :/

Viele Grüße
Fasse
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: User löschen

Beitrag von Offe »

Hast du den User zuerst inaktiv gesetzt und dann gelöscht ? Meine User sind inaktiv.

Gruß Offe
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: User löschen

Beitrag von Offe »

Hallo fasse,

ich habe dir das Problem auf der Spielwiese nachgebaut. Dort gibt es nun einen inaktiven User "OffeTest". Wenn du diesen versuchst zu löchen (als Admin einloggen --> Benutzerverwaltung --> Alle Benutzer anzeigen --> OffeTest löschen --> Bestätigen) erhälst du den oben genannten SQL Error.

Gruß Offe
Benutzeravatar
fasse
Administrator
Beiträge: 6052
Registriert: 12. Nov 2005, 16:06

Re: User löschen

Beitrag von fasse »

Hallo Offe,

der Fehler ist gefunden. Ich hatte bei einem Delete-Statement auf den eingeloggten User gefiltert, anstatt den zu löschenden User.

Aktiv - Inaktiv war dabei irrelevant. Es ging um die erstellten / empfangenen Nachrichten.

Vielen Dank für das Nachstellen auf der Spielwiese.

Viele Grüße
Fasse
Antworten