PDA

View Full Version : SQL Select mit Parameter



RPG_KL
25-01-19, 11:24
Hallo Forum,

über eine Anwendung bekomme ich einen Feldnamen genannt
mit diesem Feldname will ich aus einer Datei per SQL den Inhalt holen
im Wert steht dann was weiter im PGM zu tun ist
Da sich der Wert immer wieder ändert will ich nur den Feldinhalt

wenn ich
Select &PARM1
From "Bibl/Datei"
mache, bekomme ich nur den Konstantenwert (&PARM1),
aber nicht den Feldinhalt

kann mir da eine/einer weiterhelfen?

Schon mal Danke und ein schönes WoEn
KL

ExAzubi
25-01-19, 11:35
In CL kannst du keine dynamschen SQL aufbauen (Ja auch dort kann man mit RUNSQL eine Variable reingeben...)
Hier wäre ein RPG sinniger da du dort mit SQL-Pointern arbeiten kannst, und dir dann dein SQL Befehl vorher zusammen bauen kannst.


SQLSTMT = 'SELECT '+PARM1+'FROM LIB/FILE'
EXEC SQL PREAPRE STATEMENT SQLSTMT
....

OPEN
FETCh INTO ..

Robi
25-01-19, 13:05
Im RPG
exec sql
set :variable = (select feld from datei where ...)

Fuerchau
25-01-19, 15:29
Und am einfachsten für Einzelwerte:

MySql = 'values (select ' + MyParm + ' from mytable fetch first 1 rows only) into ?'
exec sql execute immediate : MySql using : MyVar;

RPG_KL
28-01-19, 06:28
Hallo und guten Morgen Forum,

Danke für die Einträge,
werde es so mal ausprobieren

Gruß