Hi,
define a data structure with single fields and overlay it with the array and
Fetch the result into the data structure.
(Array elements are not supported by embedded SQL)
MyDS DS
Fld1 Like(RefFld)
Fld2 Like(RefFld)
Fld3 Like(RefFld)
MyArr Like(RefFld) Dim(3) Overlay(MyDS)
Exec SQL Select MyFld1, MyFld2, MyFld3
Into :MyDS
From .... ;
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] Im
Auftrag von David FOXWELL
Gesendet: Thursday, 03. September 2009 12:01
An: RPG programming on the IBM i / System i
Betreff: RE: SQL select into [array]?
Is there a reason why one could not use CREATE TABLE AS... and use that
table instead of the array?
________________________________
* Subject: SQL select into [array]?
* From: "Koester, Michael" <mkoester@xxxxxxxxxxxxx>
* Date: Thu, 27 Aug 2009 11:54:33 -0400
I am looking for an elegant way to code an embedded SQL statement that
selects into, where the host target is an array.
As in:
Select Field1, Field2, Field3
into :MyArray(1), :MyArray(2), :MyArray(3)
From *libl/MyTable
Where Key1 = :MyKey;
... or even
Fetch from MyCursor
into :MyArray(1), :MyArray(2), :MyArray(3);
Apparently SQL syntax does not know about using "(1)", "(2)", and "(3)"
to designate the target array elements. Is there a way to code that to
be acceptable to SQL and to the V5R4 pre-compiler?
I'm hoping not to have to dump the results into a data structure,
because I ultimately need to reference the results by an index, and it
would be great to get them to load directly into the array if possible.
If only I knew the trick...
Thanks
Michael Koester
As an Amazon Associate we earn from qualifying purchases.