mirror of
https://github.com/moshix/mvs.git
synced 2026-01-11 23:43:00 +00:00
49 lines
1.4 KiB
Plaintext
49 lines
1.4 KiB
Plaintext
/* REXX */
|
|
SQL="SELECT * FROM AIRLINES WHERE NAME LIKE 'Lu%'"
|
|
|
|
|
|
"SUBCOM DSNREXX"
|
|
s_rc=RXSUBCOM('ADD','DSNREXX','DSNREXX')
|
|
address dsnrexx
|
|
/* Connect to Db2 Subsystem */
|
|
"CONNECT" D121
|
|
/* Execute SQL and save cursor data in variable */
|
|
"EXECSQL SET CURRENT PACKAGESET='DSNREXCS'"
|
|
"EXECSQL DECLARE C1 CURSOR FOR S1"
|
|
"EXECSQL PREPARE S1 INTO :SQLDA_C1 FROM :SQL"
|
|
/* Save column names and number of colums in 2d-array */
|
|
do I = 1 to SQLDA_C1.SQLD
|
|
output.0.I = SQLDA_C1.I.SqlName
|
|
output.0.0=SQLDA_C1.SQLD
|
|
/* Print out column names */
|
|
Say 'Column 'I' is 'SQLDA_C1.I.SqlName
|
|
end
|
|
/* open c1 and start getting the data of the sql response */
|
|
"EXECSQL OPEN C1"
|
|
z=0
|
|
do forever
|
|
z = z+1
|
|
/* fetching data per row */
|
|
"EXECSQL FETCH C1 USING DESCRIPTOR :SQLDA_C1"
|
|
select
|
|
when SqlCode = 0 then
|
|
/* Saving rows in array */
|
|
do I = 1 to SQLDA_C1.SQLD
|
|
ColName = SQLDA_C1.I.SqlName
|
|
ColValue = STRIP(SQLDA_C1.I.SqlData)
|
|
output.z.I = STRIP(SQLDA_C1.I.SqlData)
|
|
/* say z 'Column 'ColName' contains <'ColValue'>' */
|
|
/* Print out rows */
|
|
say output.z.I
|
|
output.0=z
|
|
end
|
|
when SqlCode = 100 then Leave
|
|
Otherwise nop
|
|
end
|
|
end
|
|
/*Close everything */
|
|
"EXECSQL CLOSE C1"
|
|
"EXECSQL COMMIT"
|
|
"DISCONNECT";
|
|
S_RC=RXSUBCOM('DELETE','DSNREXX','DSNREXX')
|