ich benutze JVerein nun seit einigen Jahren, aber es ist mir noch nicht ein einziges Mal gelungen, Mitglieder zu löschen, die ausgetreten oder verstorben sind. Mit den Jahren kamen so 16(!) Mitglieder zusammen.
Heute habe ich wieder versucht ein Mitglied zu löschen. Beim ersten Versuch kam diese Ausnahme:
Ich habe dann ein Dokument, das dem Mitglied zugeordnet war gelöscht. Dann habe ich wieder versucht das Mitglied zu löschen und diese Ausnahme bekmmen:Fehler beim Löschen des Mitgliedes
java.rmi.RemoteException: delete failed, rollback successful; nested exception is:
org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKMITGLIEDDOKUMENT1: PUBLIC.MITGLIEDDOKUMENT FOREIGN KEY(REFERENZ) REFERENCES PUBLIC.MITGLIED(ID) (68)"
Referential integrity constraint violation: "FKMITGLIEDDOKUMENT1: PUBLIC.MITGLIEDDOKUMENT FOREIGN KEY(REFERENZ) REFERENCES PUBLIC.MITGLIED(ID) (68)"; SQL statement:
delete from MITGLIED where ID = 68 [23503-193]
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:392)
at de.jost_net.JVerein.gui.action.MitgliedDeleteAction.handleAction(MitgliedDeleteAction.java:63)
at de.willuhn.jameica.gui.parts.Button$1$1.run(Button.java:174)
at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source)
at de.willuhn.jameica.gui.GUI$6.run(GUI.java:899)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Unknown Source)
at org.eclipse.swt.widgets.Display.syncExec(Unknown Source)
at de.willuhn.jameica.gui.GUI.startSync(GUI.java:895)
at de.willuhn.jameica.gui.parts.Button$1.widgetSelected(Button.java:168)
at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Display.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.notifyListeners(Unknown Source)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at de.willuhn.jameica.gui.GUI.loop(GUI.java:916)
at de.willuhn.jameica.gui.GUI.init(GUI.java:327)
at de.willuhn.jameica.system.Application.init(Application.java:145)
at de.willuhn.jameica.system.Application.newInstance(Application.java:87)
at de.willuhn.jameica.Main.main(Main.java:75)
Caused by: org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKMITGLIEDDOKUMENT1: PUBLIC.MITGLIEDDOKUMENT FOREIGN KEY(REFERENZ) REFERENCES PUBLIC.MITGLIED(ID) (68)"
Referential integrity constraint violation: "FKMITGLIEDDOKUMENT1: PUBLIC.MITGLIEDDOKUMENT FOREIGN KEY(REFERENZ) REFERENCES PUBLIC.MITGLIED(ID) (68)"; SQL statement:
delete from MITGLIED where ID = 68 [23503-193]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:426)
at org.h2.constraint.ConstraintReferential.checkRowRefTable(ConstraintReferential.java:443)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:318)
at org.h2.table.Table.fireConstraints(Table.java:967)
at org.h2.table.Table.fireAfterRow(Table.java:985)
at org.h2.command.dml.Delete.update(Delete.java:101)
at org.h2.command.CommandContainer.update(CommandContainer.java:98)
at org.h2.command.Command.executeUpdate(Command.java:258)
at org.h2.jdbc.JdbcStatement.executeUpdateInternal(JdbcStatement.java:130)
at org.h2.jdbc.JdbcStatement.executeUpdate(JdbcStatement.java:115)
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:374)
... 22 more
Danach habe ich in JVerein diese Schritte durchgeführt und nach jedem versucht, das Mitglied zu löschen:Fehler beim Löschen des Mitgliedes
java.rmi.RemoteException: delete failed, rollback successful; nested exception is:
org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKLASTSCHRIFT2: PUBLIC.LASTSCHRIFT FOREIGN KEY(MITGLIED) REFERENCES PUBLIC.MITGLIED(ID) (68)"
Referential integrity constraint violation: "FKLASTSCHRIFT2: PUBLIC.LASTSCHRIFT FOREIGN KEY(MITGLIED) REFERENCES PUBLIC.MITGLIED(ID) (68)"; SQL statement:
delete from MITGLIED where ID = 68 [23503-193]
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:392)
at de.jost_net.JVerein.gui.action.MitgliedDeleteAction.handleAction(MitgliedDeleteAction.java:63)
at de.willuhn.jameica.gui.parts.Button$1$1.run(Button.java:174)
at org.eclipse.swt.custom.BusyIndicator.showWhile(Unknown Source)
at de.willuhn.jameica.gui.GUI$6.run(GUI.java:899)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Unknown Source)
at org.eclipse.swt.widgets.Display.syncExec(Unknown Source)
at de.willuhn.jameica.gui.GUI.startSync(GUI.java:895)
at de.willuhn.jameica.gui.parts.Button$1.widgetSelected(Button.java:168)
at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Display.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.notifyListeners(Unknown Source)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at de.willuhn.jameica.gui.GUI.loop(GUI.java:916)
at de.willuhn.jameica.gui.GUI.init(GUI.java:327)
at de.willuhn.jameica.system.Application.init(Application.java:145)
at de.willuhn.jameica.system.Application.newInstance(Application.java:87)
at de.willuhn.jameica.Main.main(Main.java:75)
Caused by: org.h2.jdbc.JdbcSQLException: Referentielle Integrität verletzt: "FKLASTSCHRIFT2: PUBLIC.LASTSCHRIFT FOREIGN KEY(MITGLIED) REFERENCES PUBLIC.MITGLIED(ID) (68)"
Referential integrity constraint violation: "FKLASTSCHRIFT2: PUBLIC.LASTSCHRIFT FOREIGN KEY(MITGLIED) REFERENCES PUBLIC.MITGLIED(ID) (68)"; SQL statement:
delete from MITGLIED where ID = 68 [23503-193]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:426)
at org.h2.constraint.ConstraintReferential.checkRowRefTable(ConstraintReferential.java:443)
at org.h2.constraint.ConstraintReferential.checkRow(ConstraintReferential.java:318)
at org.h2.table.Table.fireConstraints(Table.java:967)
at org.h2.table.Table.fireAfterRow(Table.java:985)
at org.h2.command.dml.Delete.update(Delete.java:101)
at org.h2.command.CommandContainer.update(CommandContainer.java:98)
at org.h2.command.Command.executeUpdate(Command.java:258)
at org.h2.jdbc.JdbcStatement.executeUpdateInternal(JdbcStatement.java:130)
at org.h2.jdbc.JdbcStatement.executeUpdate(JdbcStatement.java:115)
at de.willuhn.datasource.db.AbstractDBObject.delete(AbstractDBObject.java:374)
... 22 more
- Zuordung von Hibiscusbuchungen zu Sollbuchungen in Mitgliedskonto gelöscht
- Alle Sollbuchungen in Mitgliedskonto gelöscht
- Zahlung auf Barzahlung umgestellt und die Nachfrage zur Löschung der Kontodaten bestätigt
- Eine Mail gelöscht, die noch unter Mails angezeigt wurde
Ich verstehe das so: JVerein veruscht das Mitglied aus der Tabelle MITGLIED zu löschen, aber das Mitglied wird noch in der Tabelle LASTSCHRIFT referenziert, weshalb der Eintrag in der Tabelle MITGLIED nicht gelöscht werden kann. JVerein müsste also erst entweder den das Mitglied referenzierenden Eintrag aus der Tabelle LASTSCHRIFT oder die Zuordnung des Eintrages in LASTSCHRIFT zu dem Eintrag in MITGLIED löschen.Referentielle Integrität verletzt: "FKLASTSCHRIFT2: PUBLIC.LASTSCHRIFT FOREIGN KEY(MITGLIED) REFERENCES PUBLIC.MITGLIED(ID) (68)"
Ich brauche hier dringend eine Lösung. Nach meinem Verständnis der DSGVO hätte ich die ausgetretenen Mitglieder nämlich längst aus der Mitgliederverwaltung löschen müssen. Oder anders ausgedrückt mein Eindruck ist, dass JVerein nicht DSGVO-konform ist.
Ich benutze JVerein
- Version 2.8.18
- Build-Date 20190623
- Build-Nr. 521
- Datenbank-Version 417
Ciao
Sarah