Anmelden

View Full Version : Aufruf SQL-Anweisungen in einem CL



kagr
20-01-05, 12:18
Ich möchte in einem CL das ich dann im Hintergrund(Batch) ablaufen lassen möchte
den SQL-Befehl Update ausführen. Wie geht das ?

Fuerchau
20-01-05, 12:23
Am besten mit einem QM-Query (QueryManager).
Dieses kann auch Parameter empfangen.
Suche mal im Forum nach STRQMQRY.

B.Hauser
20-01-05, 14:02
Ich möchte in einem CL das ich dann im Hintergrund(Batch) ablaufen lassen möchte
den SQL-Befehl Update ausführen. Wie geht das ?

RUNSQLSTM (Run SQL-Statements) ermöglicht die Ausführung von SQL-Skripten.
Du hinterlegst einfach die SQL-Anweisungen in einer Teildatei und gibts diese beim RUNSQLSTM an.
Einzelne SQL-Anweisungen werden mit Semi Colon ( ; ) beendet.

Vorsicht:
Die Option COMMIT steht per Default auf *CHG.
Werden Deine Dateien nicht im Journal aufgezeichnet, muss dieser Wert auf *NONE gesetzt werden.
Werden Deine Dateien aufgezeichnet, darfst Du die COMMIT-Anweisung zum Festschreiben nicht vergessen.

Beispiel:


RUNSQLSTM SRCFILE(MYLIB/QSQLDML) +
SRCMBR(MYMBR) +
COMMIT(*NONE)


Eine andere Möglichkeit wäre aus dem CL-Programm ein RPG-Programm mit embedded SQL aufzurufen. Da kannst Du dann auch einfach Parameter übergeben und als Host-Variablen verwenden.

Birgitta