|
Datensätze löschen |
|
|
Letzte Änderung 24.02.2010 Datensätze löschen Für dieses Beispiel benötigen Sie das Beispiel-Projekt fahrzeuge.xdev.
Mit der Anweisung
Datenbank löschen Assistent:
» Reihenfolge beachten « In einer relationalen Datenbank gibt es Abhängigkeiten, die Sie beim Löschen von Daten unbedingt beachten müssen. Häufig müssen nämlich auch Daten in anderen Tabellen gelöscht werden. Dabei müssen Sie die Reihenfolge beachten. Wenn Sie zum Beispiel in einer Fahrzeugverwaltung eine Automarke löschen möchten, müssen Sie zuerst in der Tabelle FAHRZEUGE der entsprechenden Marke löschen, anschließend in der Tabelle MODELLE alle Modelle der entsprechenden Marke und erst zum Schluss die Marke in der Tabelle HERSTELLER.
» Löschen nur mit Transaktionen « Wenn Sie auf Grund von Abhängigkeiten Daten in mehreren Tabellen löschen müssen, dann sollten Sie dies immer nur mit Hilfe einer Transaktion durchführen. Denn falls es beim Löschen zu einem unvorhergesehenen Fehler kommen sollte, wodurch nicht alle Daten wie geplant gelöscht werden können, dann führt dies zu inkonsistenten Daten in Ihrer Datenbank. Kommt es dagegen während einer Transaktion zu einem Fehler, dann stellt die Datenbank automatisch den Ausgangszustand wieder her (Rollback).
» Philosophie « Vor allem bei großen Datenbeständen bestehen häufig sehr komplexe Abhängigkeiten zwischen den Daten, wodurch für das Löschen von Daten ebenso komplexe Lösch-Prozeduren entwickelt werden müssen. Das Risiko, dass dabei versehentlich falsche Daten gelöscht werden, ist sehr hoch. In vielen Datenbank-Anwendungen werden deshalb Daten oftmals sogar gar nicht physikalisch gelöscht, sondern lediglich als gelöscht markiert. Dies kann z.B. mit Hilfe eines simplen Flags erfolgen, für das man lediglich eine zusätzliche Spalte anlegen muss. Darüber hinaus gibt es auch nicht-technische Gründe, die gegen das physikalische Löschen von Daten sprechen, u.a. rechtliche Pflichten zur dauerhaften Archivierung von Daten, z.B. Rechnungs- oder Transaktionsdaten. Entsprechende Punkte sollten vor der Implementierung von Lösch-Funktionen bedacht werden.
Basiswissen: Relationale Datenbanken, Virtuelle Tabellen.
|