-
Dynamisches SQL in einem CL erstellen
Hallo zusammen
Ich möchte in einem CL ein SQL Statement (INSERT) ausführen und einen Parameter mitgeben.
Ist das möglich?
Folgendes habe ich schon probiert:
1. Mit RUNSQLSTM kann ich zwar mein SQL Statement ausführen, aber keinen Parameter mitgeben.
2. Mit STRQMQRY kann ich zwar einen Parameter mitgeben, aber kein INSERT Statement ausführen.
3. Mit STRQSH oder QSH kommt nach Ausführung des SQL Befehls immer ein Terminalfenster, welches nicht erscheinen sollte.
4. Den Befehl RUNSQL findet das CL gar nicht.
Ich bin für jede Hilfe dankbar.
Viele Grüsse,
Sony
-
Sieh mal nach, ob du im STRQMQRY die SQL-Anweisung INSERT verwenden darfst: STRQM, dann Auswahl 10 "Mit Query Manager Profilen arbeiten", dann dein Benutzerprofil mit 2=Ändern auswählen. Dann bis zur letzten Seite blättern und dort bei "Zulässige SQL-Anweisungen auswählen" ein J=Ja eingeben. Hier kannst du die SQL-Anweisung INSERT zulassen. Danach sollte ein INSERT mit STRQMQRY gehen.
-
Hallo Pikachu
Vielen Dank. Den INSERT kann ich jetzt verwenden.
Kannst du mir noch sagen, wie die Syntax im QMQRY für die Variable aussehen soll?
Mit folgendem Aufruf erhalte ich den Fehler QWM2701:
CL:
STRQMQRY QMQRY(BIBLIOTHEK/ABFRAGE) SETVAR((VARIABLE &WERT))
QMQRY:
INSERT INTO....
WHERE DBFELD = &VARIABLE
Danke und Gruss,
Sony
-
Hello,
hab hier nen Zettel, da steht das so drauf:
#1) SQL-Source mit SEU erstellen.
Beispiel:
PHP-Code:
insert into....where dbfeld = &var1
#2) Die Abfrage mit CRTQMQRY erstellen
#3) Die Abfrage mit STRQMQRY ausführen.
k.
-
Wenn &WERT eine Zeichenkette ist, dann musst du diese im CL mit Anführungszeichen umgeben und dann so als Variable übergeben. Z.B. CHGVAR VAR(&WERTS) VALUE('''' *CAT &WERT *TCAT '''') und dann &WERTS anstelle von &WERT als Variable übergeben.
-
Super hat geklappt!
Vielen Dank für die Hilfe.
-
Es gibt da noch einen kleinen Trick.
QMQRY interpretiert den SQL erst nachdem die Variablen gefüllt sind.
Der Inhalt jeder Variable kann bis zu 55 Zeichen lang sein.
Nun kann man also einfach einen QMQRY erstellen:
&V1&V2&V3&V4&V5
Per CLP kann der SQL nun in einer Variablen zusammengebaut werden.
Per "
STRQMQRY ... SETVAR((&V1 (%SST(&MYCLVAR 1 55)) (&V2 (%SST(&MYCLVAR 56 55)) ....)
kann dann jeder beliebige SQL übergeben werden.
Die QM-Berechtigungsprüfung wird somit umgangen, da diese nur beim QMQRY selber vorgenommen wird.
Zur Laufzeit geht QMQRY davon aus, dass diese Prüfung bereits erfolgt ist.
Je nachdem, wie lang der SQL werden kann, soviele Variablen werden benötigt. Aber Achtung: alle Variablen müssen angegeben werden, sie können aber Leerzeichen enthalten.
-
Ich mach es mit einem Mini RPG-Programm
C/EXEC SQL
C+ EXECUTE IMMEDIATE :SqlStmt
C/END-EXEC
-
Hallo,
Ich habe hier ein Savefile mit dem entsprechenden Objekten. Dort enthalten ist das entsprechende Programm, um ein SQL in einem CL auszuführen.
Das Savefile kann ab V3R2M0 rückgesichert werden. Wer interesse hat, bitte bei mir melden. Eigentlich wollte ich die Datei hier hochladen, aber das hat leider nicht geklappt.
Viele Grüße und frohe Weihnachten wünscht euch
Matthias
-
Hallo Matthias, ich wäre an dem SAVF interessiert. Könntest Du den an herzfeldta@toepfer.com senden ?
MFG
Andreas
Andreas Herzfeldt
-
Hallo Matthias, ich wäre auch an dem SAVF interessiert. Könntest Du den an mrzik@tddk.de senden ?
MFG
mrzik
-
Hallo Matthias, kannst Du mir das SAVF auch bitte zuschicken, kalle100@web.de
Gruß Proggi
Similar Threads
-
By redsky in forum NEWSboard Programmierung
Antworten: 0
Letzter Beitrag: 06-12-05, 11:23
-
By RLPforum in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 15-11-05, 12:04
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 15-11-05, 11:45
-
By GHoffmann in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 07-07-05, 09:18
-
By Helwo in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 08-08-01, 08:50
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks