Altova DatabaseSpy 2024 Enterprise Edition

Abrufen und Bearbeiten von Daten

Zur Startseite Zurück Nach oben Weiter

Altova Website: _ic_link Datenbank-Tool

 

Sie können in DatabaseSpy Datenbankdaten mit Hilfe des Kontextmenübefehls Daten abrufen direkt aus dem Online Browser bzw. aus einem Tabellendesign im Design Editor abrufen. Zu diesem Zweck wird eine Abfrage generiert und ausgeführt; die Daten werden auf einem Ergebnisregister des SQL Browsers ausgegeben. Sie können auswählen, ob alle Zeilen auf einmal oder nur eine bestimmte Anzahl von Zeilen abgerufen werden sollen.

app_online-browser-retrieve-data

Für Daten, die Sie nach dem Abruf bearbeiten müssen bietet DatabaseSpy im Kontextmenü des Online Browsers die Option Daten bearbeiten. In diesem Fall wird das Ergebnisfenster in den Bearbeitungsmodus geschaltet  und dieser Status in der Statusleiste angezeigt.

tab_result-statusbar-editable

Sie können auch einzelne Spalten einer Tabelle auswählen, wenn Sie die Befehle Daten abrufen bzw. Daten bearbeiten verwenden. In diesem Fall werden nur Daten aus diesen Spalten abgerufen. Beachten Sie jedoch, dass eventuell alle Spalten abgerufen werden, wenn Sie in den Optionen zur SQL-Generierung das Kontrollkästchen SELECT-Anweisungen mit vollständiger Spaltenliste erzeugen deaktiviert haben.

So rufen Sie Daten aus dem Online Browser ab:

Klicken Sie im Online Browser mit der rechten Maustaste auf ein oder mehrere Objekte, aus denen Sie Daten abrufen möchten, und wählen Sie im Kontextmenü entweder Daten abrufen | Alle Zeilen (Strg+Alt+R) oder Daten abrufen | Erste n Zeilen (Strg+Alt+T).

Klicken Sie im Design Editor in einem Tabellendesign mit der rechten Maustaste auf die Titelzeile bzw. (mit Hilfe von Strg+Klick) auf eine oder mehrere einzelne Spalten und wählen Sie im Kontextmenü entweder SQL und Daten | Daten abrufen | Alle Zeilen (Strg+Alt+R) oder SQL und Daten | Daten abrufen | Erste n Zeilen (Strg+Alt+T).

 

Daraufhin wird ein SQL Editor-Fenster geöffnet, in dem die Abfrage für den Datenabruf angezeigt wird. Wenn Sie Objekte aus verschiedenen Tabellen markiert haben, werden separate SELECT-Anweisungen für die einzelnen Tabellen erzeugt. Die Ergebnisse der Abfrage werden im Ergebnisfenster unterhalb davon angezeigt.

So rufen Sie Daten zum Bearbeiten auf:

Vorausgesetzt, dass die direkte Bearbeitung von Datenbankdaten für die entsprechende Datenbank unterstützt wird, Klicken Sie im Online Browser mit der rechten Maustaste auf eine Tabelle oder Spalte und wählen Sie im Kontextmenü den Eintrag Daten bearbeiten.

 

Teilweiser Abruf

In den SQL Editor Optionen können Sie die Anzahl n der Zeilen definieren, die abgerufen werden sollen, wenn Sie im Kontextmenü den Befehl Daten abrufen | Erste n Zeilen auswählen. Sie können die Daten portionsweise mit Hilfe der Symbolleistenschaltflächen des Ergebnisfensters abrufen.

 

Stoppen des Aufrufs

Während des Datenabrufs sehen Sie in der Statusleiste  des Ergebnisregisters, wie viele Zeilen bereits abgerufen wurden. Des weiteren werden die Ausführungszeit, sowie links im Register des entsprechenden SQL Editor-Fensters ein Symbol, das anzeigt, dass noch weitere Daten abgerufen werden, angezeigt.

sql_tab-retrieving

Während Daten abgerufen werden, ist in der Symbolleiste des SQL Editors statt der Schaltfläche Ausführen ic_execute-sql die Schaltfläche Abruf stoppen ic_stop-retrieval sichtbar. Sie können den Abrufvorgang jederzeit abbrechen, indem Sie auf die Schaltfläche Abruf stoppen klicken. In der Statuszeile wird angezeigt, dass der Abruf gestoppt wurde.

tab_result-statusbar-stopped

So stoppen Sie den Abruf von Datenbankdaten:

Klicken Sie auf die Schaltfläche Abruf stoppen ic_stop-retrieval, welche in der Symbolleiste des SQL Editors sichtbar ist, während Daten abgerufen werden.

So nehmen Sie einen unterbrochenen Abruf von Datenbankdaten wieder auf:

Wählen Sie eine der folgenden Methoden:

 

Um die nächsten n Datenzeilen abzurufen, klicken Sie auf die Schaltfläche Nächste n Zeilen abrufen ic_retrieve-next-n-rows oder klicken Sie mit der rechten Maustaste an eine beliebige Stelle auf dem Ergebnisregister und wählen Sie im Kontextmenü die Option Nächste n Zeilen abrufen.

Um alle fehlenden Daten abzurufen, klicken Sie auf die Schaltfläche Ausstehende Zeilen abrufen ic_retrieve-outstanding-rows oder klicken Sie mit der rechten Maustaste auf eine beliebige Stelle auf dem Ergebnisregister und wählen Sie im Kontextmenü die Option Ausstehende Zeilen abrufen.

 

Bearbeiten von Datenbankdaten im Ergebnisfenster

Um die in Ihren Datenbanktabellen enthaltenen Daten zu bearbeiten, können Sie entweder die entsprechenden SQL-Anweisungen generieren und im SQL Editor ausführen oder - dies ist die einfachere Methode - die Daten abrufen und direkt im Ergebnisfenster bearbeiten.

 

Das Ergebnisfenster muss für die Bearbeitung aktiviert werden, bevor Sie an den im Ergebnisraster angezeigten Daten Änderungen vornehmen können. Im Kontextmenü des Online Browsers sowie im Kontextmenü, das erscheint, wenn Sie im Design Editor mit der rechten Maustaste in ein Tabellendesign klicken, steht zu diesem Zweck für Tabellen und Spalten der Befehl Daten bearbeiten zur Verfügung. Dieser Befehl generiert eine SELECT-Anweisung, welche in einem neuen SQL Editor-Fenster angezeigt wird und sofort ausgeführt wird, wodurch das Ergebnisfenster in den Bearbeitungsmodus wechselt.

 

Darüber hinaus steht in der SQL Editor-Symbolleiste die Schaltfläche Zur Datenbearbeitung ausführen ic_edit-data zur Verfügung, so dass Sie eine SELECT-Anweisung ausführen und gleichzeitig das Ergebnisfenster in den Bearbeitungsmodus schalten können. Dies ist vor allem dann nützlich, wenn Sie bereits Daten abgerufen haben und nun einige der Datensätze aktualisieren möchten. In der Tabelle unten sehen Sie die Bearbeitungsoptionen für die einzelnen Datenquellenverbindungen.

So wählen Sie Daten im Ergebnisfenster für die Bearbeitung aus:

Wählen Sie eine der folgenden Methoden:

 

Klicken Sie im Online Browser oder in einem Design Editor Fenster mit der rechten Maustaste auf die Tabelle oder Spalte, die Sie bearbeiten möchten, und wählen Sie im Kontextmenü den Befehl Daten bearbeiten.

Es wird eine SELECT-Anweisung erstellt und automatisch im SQL Editor ausgeführt.

Generieren Sie in einem neuen SQL Editor-Fenster eine SELECT-Anweisung und klicken Sie auf die Schaltfläche Zur Datenbearbeitung ausführen ic_edit-data, falls diese für die gerade verwendete Datenquellenverbindung zur Verfügung steht.

 

Bitte beachten Sie: Je nachdem, welche Datenquellenverbindung Sie gerade verwenden und ob für die bearbeitete Tabelle ein Primärschlüssel definiert wurde oder nicht, stehen nicht immer alle Bearbeitungsoptionen (Zeile aktualisieren, einfügen oder löschen) zur Verfügung.

 

Bitte beachten Sie die folgenden Einschränkungen bei der Bearbeitung von Daten im Ergebnisfenster:

 

Bei Verwendung des Befehls Zur Datenbearbeitung ausführen dürfen im SQL Editor-Fenster nur SELECT-Anweisungen vorhanden sein. Wenn Sie auf die Schaltfläche Zur Datenbearbeitung ausführen klicken, wenn eine andere Anweisung im SQL Editor enthalten ist, wird die Anweisung ausgeführt ohne dass das Ergebnisfenster in den Bearbeitungsmodus geschaltet wird.

Bei Tabellen, bei denen die Eindeutigkeit von Zeilen nicht gewährleistet werden kann, wird die Bearbeitung nur teilweise unterstützt. So können Sie etwa neue Zeilen einfügen, vorhandene aber nicht aktualisieren oder löschen. Dies ist normalerweise bei Tabellen ohne Primärschlüssel oder ohne eindeutige Schlüssel oder Indizes (oder SELECT-Abfragen, in denen Sie solche Spalten ausgelassen haben) der Fall. Wenn Sie für eine solche Tabelle oder SELECT-Abfrage den Befehl Daten bearbeiten auswählen, wird von DatabaseSpy ein Dialogfeld mit einer Warnung angezeigt.

dbs_dlg_editing_limited_no_pk

 

Wenn dieses Dialogfeld nicht mehr angezeigt werden soll, aktivieren Sie das Kontrollkästchen Dieses Dialogfeld nicht mehr anzeigen! oder deaktivieren Sie diese Funktion in den SQL Editor-Optionen.

 

Wenn der Primärschlüssel in mehreren Spalten definiert ist, müssen alle Spalten, die Teil des Primärschlüssels der Tabelle sind, müssen in die Anweisung inkludiert werden. Wenn eine solche Spalte in der SELECT-Anweisung fehlt, erscheint ein Dialogfeld wie das oben gezeigte ("Datenbearbeitung für diese Anweisung ist eingeschränkt").

Spalten, die das Ergebnis einer Berechnung sind oder bestimmte Eigenschaften wie z.B. autoincrement, Zeitstempel usw. haben, sind von der Bearbeitung ausgeschlossen. Falls derartige Spalten vorhanden sind, wird vor Anzeige der Ergebnisse wird ein Warnung wie die oben gezeigte angezeigt. Sie können die restlichen Spalten der Tabelle jedoch weiterhin bearbeiten.

 

Damit vorhandene Zeilen auch in Tabellen ohne Primärschlüssel oder eindeutige Schlüssel aktualisiert oder gelöscht werden können, bearbeiten Sie die SELECT-Anweisung, um eine Spalte zu inkludieren, die die Eindeutigkeit der Zeile gewährleistet. Wenn die Tabelle z.B. keinen Primärschlüssel hat, inkludieren Sie in die SELECT-Anweisung eine autoincrement-Spalte oder eine Spalte, die einen eindeutigen Schlüssel oder Index hat. Darüber hinaus bietet SQLite-Datenbanken zu diesem Zweck eine interne rowid-Spalte. Zwar handelt es sich hierbei um eine interne Spalte, die daher im Online Browser nicht angezeigt wird, doch können Sie die Spalte dennoch in Ihrer SELECT-Anweisung, wie unten gezeigt verwenden. Der Wert von rowid selbst kann allerdings nicht aktualisiert werden, daher wird das Warndialogfeld mit der Warnung, dass diese Spalte nicht bearbeitet werden kann, dennoch angezeigt.

SQLite

SELECT "col1",
      "col2",
      "col3",
      rowid
FROM "main"."table";

 

Wenn dieses Verhalten bei der Erstellung der Tabelle explizit deaktiviert wurde (d.h. wenn die Tabelle unter Verwendung des Schlüsselworts WITHOUT ROWID erstellt wurde) ist die Verwendung einer rowid nicht möglich.

© 2017-2023 Altova GmbH