Hallo zusammen,
ich möchte in Base in einer Tabelle von Hand einige Datensätze löschen.
Das wird von Base aber mit dieser Fehlermeldung quittiert:
Hallo zusammen,
ich möchte in Base in einer Tabelle von Hand einige Datensätze löschen.
Das wird von Base aber mit dieser Fehlermeldung quittiert:
Hallo Ansgar,
kann es sein, dass eine andere Tabelle damit verknüpft ist?
Viele Grüße
Ralf
Hallo Ansgar, hallo Ralf,
kann es sein, dass eine andere Tabelle damit verknüpft ist?
Muss sogar, da eine Beziehungsverletzung angezeigt wird.
Integrity constraint violation SYS_FK_94 table: Beiträge in
statement [DELETE FROM "Mitglieder" WHERE "ID" = ?]
In der Tabelle "Mitglieder" wird zu einer Tabelle "Beiträge" so
verknüpft, dass das Löschen eines Mitglieds dazu führt, dass in der
Tabelle "Beiträge" ein Fremdschlüsseleintrag stehen bleiben würde, zu
dem kein Mitglied existiert.
So etwas lässt sich unter Extras → Beziehungen dauerhaft klären. Dort
auf die Verbindung klicken und und bei einer der Löschoptionen die
entsprechende wählen.
"Keine Aktion" führt zu der Fehlermeldung.
"Kaskadierend löschen" führt dazu, dass der Datensatz auch "Beiträge"
auch gelöscht wird.
"Null setzen" führt dazu, dass in "Beiträge" das Fremdschlüsselfeld
leer bleibt.
"Default setzen" führt dazu, dass der SQL-Standardwert gesetzt wird.
Der ist allerdings in der Regel nie definiert worden. Das geht nämlich
über die grafische Benutzeroberfläche nicht, sondern nur über Extras →
SQL.
Gruß
Robert
Aha, danke!
Ich habe das Problem gelöst, indem ich die Verknüpfung inkl. Tabelle
gleich ganz gelöscht habe - sie war sowieso nur ein Versuch und
mittlerweile obsolet geworden.
Ansgar