zOs/SQL/STPR1
$#@
$*(
set current sqlid = 'S100447';
create procedure A540769.stpr2(
in c1 char(4), in i2 int, out o3 varchar(30))
version v1 deterministic contains sql
set o3 = 'out from c1=' || c1 || ', i2=' || strip(char(i2)) || '?'
;
$*)
call sqlConnect dbaf
p1 = 'vier'
p2 = 987655
p3 = left('vorher', 30)'xyz'
say 'p1='p1', p2='p2', p3='p3
call sqlExec 'call A540769.stpr2(:p1, :p2, :p3)'
say 'p1='p1', p2='p2', p3='p3
call sqlExImm 'call A540769.stpr2(:p1, :p2, :p3)'
say 'p1='p1', p2='p2', p3='p3
sql = 'call A540769.stpr2(?, ?, ?)'
call sqlExec 'prepare s1 from :sql'
call sqlExec 'describe input s1 into :m.ii'
say m.ii.sqld
do dx=1 to m.ii.sqld
say dx m.ii.sqlName.dx m.ii.sqlType.dx
end
$#out 20120522 17:10:52
*** run error ***
SQLCODE = -312: VARIABLE P1 IS NOT DEFINED OR NOT USABLE
src call A540769.stpr2(:p1, :p2, :p3)
> >>>pos 21 of 33>>>
stmt = execute immediate :ggSrc
with immediate :ggSrc = call A540769.stpr2(:p1, :p2, :p3)
$#out 20120522 16:58:08
*** run error ***
SQLCODE = -084: UNACCEPTABLE SQL STATEMENT
src call A540769.stpr2(?, ?, ?)
> <<<pos 1 of 27<<<
stmt = prepare s1 from :sql
with from :sql = call A540769.stpr2(?, ?, ?)
subsys = M.call A540769.stpr2(?, ?, ?).CONHOST/M.call A540769.stpr2(?, ?, ?).CON
$#out 20120522 16:57:12
*** run error ***
SQLCODE = -104: ILLEGAL SYMBOL "?". SOME SYMBOLS THAT MIGHT
BE LEGAL ARE: <IDENTIFIER>
src call A540769.stpr2(:?, :?, :?)
> >>>pos 21 of 30>>>
stmt = prepare s1 from :sql
with from :sql = call A540769.stpr2(:?, :?, :?)
subsys = M.call A540769.stpr2(:?, :?, :?).CONHOST/M.call A540769.stpr2(:?, :?, :
$#out 20120522 16:32:07
$#out 20120522 16:31:07
SQLCODE = 000, SUCCESSFUL EXECUTION
warnings 1=W var truncated
stmt = execSql call A540769.stpr2(:p1, :p2, :p3)
with :p1 = vier
:p2 = 987655
:p3 = out fr
$#out