PDA

View Full Version : SQL Statement in SQLRPGLE



Seiten : 1 2 [3]

Fuerchau
22-12-11, 09:26
Ich denke nicht, dass du im Fetch 2 Strukturen angeben kannst.
Sobald mehr als 2 Ziele angegeben werden, wird dies als Einzelfelder interpretiert.

Dir bleibt halt nichts anderes übrig, als obigen Vorschlag aufzunehmen:

Definiere genau die Felder, die du im Select benötigst und führe diese ebenso einzeln im Fetch auf.

Nun zu deinem Laufzeitproblem:
Der Fetch kehrt mit einem negativen SQLCOD zurück und nicht mit 100 (No more Data), da die Feldliste des Fetch nicht mit der Feldliste des Ergebnisses übereinstimmt.
Es gibt also ein Ergebnis, dass du leider nur nicht verarbeiten kannst.

BenderD
22-12-11, 09:30
... genau dafür gibt es Views!!!
create view ddd as (select ...)
und dann select * from ddd. (Soviel nur zum Select *, gegen den absolut nichts spricht, der Design Fehler liegt darin, dass beim select was anderes als Views verwendet werden)

D*B

andreaspr@aon.at
22-12-11, 09:41
Ich denke nicht, dass du im Fetch 2 Strukturen angeben kannst.

Doch das geht!!
Du kannst im Fetch mehrere DS und/oder einzelne Felder angeben.
Wichtig ist nur, dass die Felder in der DS den Spalten im Select entsprechen.
Und die Reihenfolge ist zu beachten!!

andreaspr@aon.at
22-12-11, 09:43
Wie Sam schon richtig erwähnte, ist die Möglichkeit mehrere DS und Felder gleichzeitig und gemischt zu verwenden nicht unbedingt der beste und schnellste weg.


Vielleicht noch etwas generelles: Benötigst du wirklich ALLE Spalten aus diesen Dateien?
Laut diversen Spezialisten sollte man wenn nicht unbedingt notwendig kein Select * verwenden.

lg Andreas

Vigi
22-12-11, 09:50
Also ich ahbe es mit dieser


D MyData E Ds Extname(CXLAGPF)
D MyData2 E Ds Extname(artstamm)

Fetch Mycursor Into :Mydata, :mydata2;
Version hinbekommen. Das funktioneirt wunderbar.

Fuerchau
22-12-11, 09:55
Wichtig ist bei dieser Variante, dass du einen INNER JOIN verwendest, da du sonst NULL-Ergebnisse im Join gemeldet werden und dir NULL-Anzeiger-Arrays fehlen.

Joe
23-12-11, 13:45
Gibt es eigentlich noch Firmen, die Schulungen
für RPG / SQL -Basics anbieten ? :-)

Joe

andreaspr@aon.at
23-12-11, 20:01
Davon gibt es eigentlich einige.
Angefangen vom Baldur, wenn ich mich nicht irre ;)
ITP Verlag
Und in Österreich erfolgsbildung.at (http://www.erfolgsbildung.at/index.php?id=215&no_cache=1&tx_seminars_pi1[showUid]=1053) :)

lg Andreas