Datenbankanfrage

Home  Zurück  Vor

Datenbanken arbeiten passiv. Sie müssen angefragt werden.

Befehle sind

 

SELECT                Lesen aus der Datenbank. Das liefert Daten.
INSERT                Schreiben in die Datenbank
UPDATE                Existierenden Datensatz aktualisieren
DELETE                Datensatz löschen
CALL/EXEC                Prozedur        Unterprogramm ohne Parameter rufen
CALL/SELECT        Funktion        Unterprogramm mit Parametern rufen
Benutzerdefinierte SQL Anfrage

 

Eingangsdaten liegen direkt am Datenbankelement an.

Die Ergebnisse die eine Datenbankanfrage bringt (normalerweise SELECT oder CALL) werden mit dem Element Datenbankdaten nutzen weiterverarbeitet. Die Daten sind gültig wenn das Datenbankelement "Fertig" und "Ok" und "Anzahl Datensätze nicht 0" liefert.

Aufwendigere Datenverarbeitung werden idealerweise in Schrittketten umgesetzt. Die Ergebnisdaten beziehen sich auf die Datenbankanfrage zur gleichen Verbindung und dem gleichen Anfrage ID.

 

Im Eingabefeld für die SQL Anweisung nutzen Sie die Parameter mit führendem Doppelpunkt ":". Ein Doppelpunkt der in der Anweisung enthalten ist muss verdoppelt werden.

 

Benutzerdefinierte Befehle erfordern Detailwissen über SQL und die jeweilige spezielle Datenbank. Auch wenn der Befehl keine Eingangsdaten benötigt so muss mindestens ein Eingangselement konfiguriert werden, es wird als Signalisierung des Aufrufs genutzt.

 

Detaillierte Informationen über den Rückgabestatus des Datenbank Anfragelementes liefert der Ausgang "Error Codes". Das Feld enthält drei Variablen:

Byte 0: Serverfehler. Der Datenbankserver ist erreichbar und arbeitet, die Anfrage kann aber nicht abgearbeitet werden. Die Datenbanken liefern in diesem Fall einen Fehlertext. Dieser Text wird in der Online Diagnose der entsprechenden Logiktabelle gezeigt. Wenn im Logger das Fehlerloggen nicht abgeschaltet wurde dann steht der Datenbank Fehlertext auch im Diagnoselogger.

Byte 1: Verbindungsfehler. Der Datenbankserver kann nicht erreicht werden.

Byte 2: Cachefehler. Der Cache wird nur dann benutzt wenn das in der Verbindung auch konfiguriert ist. Der Cache kann Fehler liefern wenn das Verzeichnis oder die Datei nicht mehr erreicht werden kann, oder wenn der Speicherplatz auf dem Medium nicht mehr ausreicht.

 

Hinweis für ODBC in Verbindung mit Oracle:

Geben Sie im Datenbankelement für den den Schemaname den Name des Benutzers an, schreiben Sie den in Großbuchstaben. Das Browsen der Schema wird von Oracle nicht unterstützt.

Dateizwischenspeichern aktivieren

Ist die Verbindung zu der Datenbank unterbrochen, so werden die Aufrufe in einer Datei zwischengespeichert.

Dazu müssen folgende Bedingungen erfüllt werden.

Das Zwischenspeichern muss in der Verbindung eingeschaltet werden.
Das Zwischenspeichern muss pro Datenbankbefehlsblock eingeschaltet werden.

 

Diese Funktion kann nur dann aktiviert werden, wenn der jeweilige Befehl KEINE Daten zurück liefern soll. Das ist bei INSERT, UPDATE, DELETE immer der Fall, bei SELECT nie. Bei CALL und bei benutzerdefinierten Befehlen nur dann, wenn keine Ergebnisse erwartet werden ("Maximum expected results" = 0).

Wenn das erfüllt wurde, dann werden auch Stored-Procedure-Aufrufe zwischengespeichert.

 

Hintergrund für diese Regelung ist, dass die Antwortdaten beim Nachreichen nicht mehr zugeordnet werden können. Daher ist das Nachreichen von Befehlen, die Antworten liefern, nicht vorgesehen.