Altova DatabaseSpy 2024 Enterprise Edition

Um Daten aus Datenbanktabellen oder -spalten zu löschen, stehen Ihnen die folgenden Optionen zur Verfügung:

 

Löschen aller oder bestimmter Datensätze (Zeilen) aus einer Tabelle. Das bedeutet, dass der/die entsprechende(n) Datensatz/Datensätze vollständig entfernt wird/werden.

Zurücksetzen eines oder mehrerer Datenbankfelder auf Null oder den Standardwert in einer einzigen Operation. Dies bedeutet, dass keine Datenbankdatensätze gelöscht werden; es werden nur die ausgewählten Felder geändert. Nähere Informationen zum Zurücksetzen von Datenbankfeldern auf ihren Null- oder Standardwert finden Sie unter Aktualisieren von Daten.

 

Die Optionen zum Löschen von Datenbankdatensätzen stehen je nach Fall im Online Browser, im Ergebnisraster oder sowohl aus auch zur Verfügung (Beschreibung siehe unten).

 

Löschen von Datensätzen mit einer DELETE-Anweisung

So löschen Sie Datensätze durch Generierung einer DELETE-Anweisung:

 

1.Stellen Sie eine Verbindung zur Datenbank her und zeigen Sie die entsprechende Datenquelle im Online Browser an.

2.Klicken Sie optional mit der rechten Maustaste in den Online Browser und wählen Sie den Befehl Daten abrufen | Alle Zeilen, um die in der Tabelle enthaltenen Daten zu sehen.

3.Wählen Sie eine der folgenden Methoden:

 

Klicken Sie im Online Browser mit der rechten Maustaste auf die Tabelle und wählen Sie im Kontextmenü den Befehl In neuem SQL Editor anzeigen | Delete data oder

Ziehen Sie die Tabelle alternativ bei gedrückter rechter Maustaste in ein offenes SQL Editor-Fenster und wählen Sie im Kontextmenü den Befehl Delete data.

 

Der Befehl Delete data steht nur für Tabellen zur Verfügung; wenn Sie mit der rechten Maustaste auf eine Spalte klicken, ist er deaktiviert.

 

Im SQL-Editor wird eine DELETE-Anweisung für die ausgewählte Tabelle generiert und es wird eine Standard-WHERE-Klausel hinzugefügt, z.B:

dbs-delete-data

Wie weiter unten näher beschrieben, ist die standardmäßig generierte DELETE-Anweisung so konstruiert, dass Daten nicht unabsichtlich gelöscht werden können. Dies ist beabsichtigt. D.h. Sie müssen die WHERE-Klausel bearbeiten, damit genau die Zeilen gefiltert werden, die gelöscht werden sollen.

 

4.Bearbeiten Sie die WHERE-Bedingung gegebenenfalls, um nur die Zeilen auszuwählen, die gelöscht werden sollen. Um alle Zeilen zu löschen, entfernen Sie die WHERE-Klausel.

5.Klicken Sie auf die Schaltfläche Ausführen dbs_ic_execute_script, um die Anweisung auszuführen und die Daten aus der Datenbank zu löschen.

 

Die standardmäßig generierte DELETE-Anweisung ist so konstruiert, dass Daten nicht unabsichtlich gelöscht werden. Sie müssen die WHERE-Klausel höchstwahrscheinlich bearbeiten, um Zeilen löschen zu können. Wenn Sie alle Zeilen der Tabelle löschen möchten, entfernen Sie einfach die WHERE-Klausel aus der DELETE-Anweisung.

 

Um die entsprechenden Zeilen einfach filtern zu können, enthält die generierte WHERE-Klausel den Namen des Primärschlüssels mit einem vorausgefüllten Wert, wobei davon ausgegangen wird, dass die Tabelle einen Primärschlüssel hat. So wurde z.B. die folgende DELETE-Anweisung anhand einer SQLite-Tabelle generiert, die einen Primärschlüssel id enthält:

 

DELETE FROM "addresses" WHERE "id"=0;

 

Wenn die Tabelle keinen Primär-schlüssel hat, enthält die WHERE-Bedingung die vereinheitlichte Liste aller Spalten aller eindeutigen Schlüssel. Wenn die Tabelle weder Primärschlüssel noch eindeutige Schlüssel hat, enthält die generierte WHERE-Klausel alle Spalten mit Ausnahme von berechneten Spalten.

 

Welche generierten Werte in der WHERE-Klausel aufscheinen, hängt vom Standardwert der Spalte, ob sie auf Null gesetzt werden kann, und vom Datentyp der Spalte ab. Unten sehen Sie ein Beispiel für eine anhand einer SQL Server-Tabelle generierte DELETE-Anweisung, (i) die keine Primärschlüssel oder eindeutigen Schlüssel hat, (ii) deren erste Spalte den Typ integer und (iii) deren zweite Spalte den Typ nvarchar hat.

 

DELETE FROM [dbo].[Events] WHERE [id]=0 AND [event]=N'';

 

Visuelles Löschen von Datensätzen

So löschen Sie Datensätze mit visuellen Hilfsmitteln aus dem Ergebnisraster:

 

1.Klicken Sie mit der rechten Maustaste im Online Browser auf die Tabelle und wählen Sie im Kontextmenü den Befehl Daten bearbeiten.

2.Klicken Sie mit der rechten Maustaste auf eines der Felder in der zu löschenden Zeile und wählen Sie anschließend im Kontextmenü den Befehl Zeile löschen. Klicken Sie alternativ dazu an eine beliebige Stelle in der Zeile und anschließend auf die Schaltfläche Zeile löschen dbs_ic_delete. Um mehrere Zeilen für die Löschung auszuwählen, klicken Sie auf die Zahlen-ID auf der linken Seite der Zeile, halten Sie die Strg-Taste gedrückt und klicken Sie auf die Schaltfläche Zeile löschen dbs_ic_delete.

dbs-delete-in-result-grid

Die Zeilen werden zu diesem Zeitpunkt für die Löschung markiert und Sie können die Änderungen noch rückgängig machen. Um die Änderungen rückgängig zu machen, klicken Sie entweder mit der rechten Maustaste auf die Zeile und wählen Sie im Kontextmenü Änderungen für diese Zelle rückgängig machen oder klicken Sie auf die Schaltfläche Alle Änderungen am Ergebnisraster rückgängig machen dbs_ic_undo.

 

3.Klicken Sie auf Übernehmen.

© 2017-2023 Altova GmbH