Reply generation of a SQL chained stored procedure
Generating a reply message for chained stored procedures is similar to a single stored procedure. The difference is each stored procedure returns its own results, so there are multiple sets of results returned from chained stored procedures.
The returned results set objects are saved into message content; other
results are saved into DRIVERCTL
as a keyed list where the key is the name
of the stored procedure.
For example:
msgDriverControl: {sp_dbp_insert {{_CLUPDATECOUNT_ 1} {_CLRSCOUNT_ 0}}}
: {sp_dbp_select {{_CLUPDATECOUNT_ -1} {_CLRSCOUNT_ 1}}}
message: {sp_dbp_ select {
: {{RSMETACOLUMNNAME {
: {ID} {strFLD} {intFLD} {dateFLD} {flag}
: }}
: {RSDATA {
: { {keyNull} {test11} {} {} {100} }
: { {key01} {test1} {1} {2012-10-01 00:00:00.0} {1} }
: { {key02} {test2} {2} {2012-10-02 00:00:00.0} {1} }
: { {key03} {test3} {3} {2012-10-03 00:00:00.0} {1} }
: { {key04} {test4} {4} {2012-10-04 00:00:00.0} {1} }
: { {key05} {test5} {5} {2012-10-05 00:00:00.0} {1} }
: }}}
: }}
{sp_dbp_insert {{_CLUPDATECOUNT_ 1} {_CLRSCOUNT_ 0}}}
indicates one row is updated in the outbound stored procedure sp_dbp_insert
. No result set is returned from stored procedure sp_dbp_insert
.
{sp_dbp_select {{_CLUPDATECOUNT_ -1} {_CLRSCOUNT_ 1}}}
indicates no updated count is returned from the outbound stored procedure sp_dbp_select
. One result set is returned from stored procedure
sp_dbp_select
. The result set content is saved in the
reply message’s content.