| IBM MAINFRAME HELP & SUPPORT FORUMS Technical Forums for IBM Mainframe Applications like COBOL, JCL, CICS, DB2, FileAid, DFSORT, Endevor, Xpediter, CoolGen, CA-7&11, AbendAid, IMS, IDMS, PL/I, MqSeries, SyncSort, Assembler, ChangeMan, Easytrieve, InterTest, REXX, CLIST etc...
|
| View previous topic :: View next topic |
| Author |
Message |
babu_hi
Joined: 11 Apr 2006
Posts: 66
|
| Posted: Thu Aug 21, 2008 2:49 pm Post subject: Getting sql code -313, while execting Dynemic sql cursor? |
|
|
EXEC SQL
DECLARE ARW_X9_CURSOR CURSOR FOR DYNSELECT
END-EXEC.
EXEC SQL
PREPARE DYNSELECT FROM :WS-DYN-SELECT
END-EXEC.
EXEC SQL
OPEN ARW_X9_CURSOR USING :WS-DBL-SEND-ABA,
:WS-DBL-RECV-ABA,
:WS-DBL-RESEND-IND,
:WS-DBL-FILE-RECV-IND,
:WS-DBL-CREATE-DATE,
:WS-DBL-CREATE-TIME,
:WS-DBL-BUSINESS-DATE,
:WS-DBL-CASH-LET-ID,
:WS-DBL-BUNDLE-ID,
:WS-DBL-HEADER
END-EXEC
The Dyn select statement is contain the SQL STATEMENT is
SELECT * FROM ARW0.ARWX9_T009
WHERE SEND_RT_NO = ? ',
AND RECV_RT_NO = ? ',
AND RESEND_IND = ? ',
AND FILE_RECV_CNT = ? ',
AND CREA_DTE = ? ',
AND CREA_TME = ? ',
AND CASH_LET_BUS_DTE = ? ',
AND CASH_LET_ID = ? ',
AND BUNDLE_ID = ? ',
AND CNTL_REC_IND = ?)
uBION
SELECT * FROM ARW0.ARWX9_T010
WHERE SEND_RT_NO = ? ',
AND RECV_RT_NO = ? ',
AND RESEND_IND = ? ',
AND FILE_RECV_CNT = ? ',
AND CREA_DTE = ? ',
AND CREA_TME = ? ',
AND CASH_LET_BUS_DTE = ? ',
AND CASH_LET_ID = ? ',
AND BUNDLE_ID = ? ',
AND CNTL_REC_IND = ?)
UNION
SELECT * FROM ARW0.ARWX9_T011
WHERE SEND_RT_NO = ? ',
AND RECV_RT_NO = ? ',
AND RESEND_IND = ? ',
AND FILE_RECV_CNT = ? ',
AND CREA_DTE = ? ',
AND CREA_TME = ? ',
AND CASH_LET_BUS_DTE = ? ',
AND CASH_LET_ID = ? ',
AND BUNDLE_ID = ? ',
AND CNTL_REC_IND = ?)
If sql statement contain UNION(more that one table),I am gettinh sqlcode -313.If only one table(no union) the above statement is working fine.
For more than one table how do i maintain OPEN statement in Dynemeic Sql for giving inputs to the where clause of sellect query? |
|
| Back to top |
|
PeD
Joined: 26 Nov 2005
Posts: 313
Location: Belgium
|
| Posted: Thu Aug 21, 2008 2:58 pm Post subject: |
|
|
Is this a typo? Code: uBION
|
|
| Back to top |
|
dbzTHEdinosauer
Joined: 20 Oct 2006
Posts: 1639
Location: germany
|
| Posted: Thu Aug 21, 2008 3:12 pm Post subject: |
|
|
I had sworn off making caustic remarks, but what about the description of an sql code -313 don't you understand?
Quote:
-313 THE NUMBER OF HOST VARIABLES
SPECIFIED IS NOT EQUAL TO THE
NUMBER OF PARAMETER MARKERS
Explanation: The number of host variables specified in the EXECUTE or OPEN statement
is not the same as the number of parameter markers (question marks) appearing in the prepared SQL statement.
System Action: The statement cannot be executed. Programmer
Response: Correct the application program so that the number of host
variables specified in the EXECUTE or OPEN statement is the same as the
number of parameter markers appearing in the prepared SQL statement.
The DESCRIBE INPUT SQL statement
can be used to determine the expected number of input
parameter markers
select * ?
only an ***** would do that, especially in dynamic sql. |
|
| Back to top |
|
| |
THIS IS AN ARCIVE FORUM IN READ ONLY MODE. IF YOU WANT TO ASK YOUR DOUBTS USE THE ACTUAL FORUM
|