db2batch 将存储过程与参数文件结合使用



我正在尝试查找如何将 db2batch 与存储过程调用和参数文件一起使用的示例。

有一个存储过程,我想多次调用并提供文件中的参数,但是我正在努力找到显示如何执行此操作的文档。

关于使用参数文件的文档当然不是很好。 但是,您确实可以使用 db2batch 调用存储过程**。

下面是命令行的示例:

db2batch -d yourdb -iso cs -f stmts.sql -m stmts.data

调用该过程的 SQL 文件 ( stmts.sql ) 如下所示:

--#BGBLK 5
call my.storedproc(?, ?);
--#EOBLK

--#BGBLK后面的数字指示db2batch执行块中的语句 5 次。

您的参数文件 ( stmts.data ) 如下所示(此示例适用于存储过程,其中存储过程的第一个参数是INT,第二个参数是VARCHAR(15),两者都是IN参数):

1 'First'
2 'Second'
3 'Third'
4 'Fourth'
5 'Fifth'
6 'Sixth'
7 'Seventh'
8 'Eighth'
9 'Ninth'
10 'Tenth'

此文件中有 10 对参数,但由于 --#BGBLK 标识仅指定了 5 的重复计数,因此 db2batch 将仅读取参数文件中的前 5 行。如果指定的重复计数大于参数文件中的行数,则对于没有参数文件中相应值的重复项,将收到错误。

**注意:db2batch将处理具有IN参数的过程,甚至将处理返回结果集的存储过程,但我不知道如何让它与具有OUT参数的存储过程一起使用。

最新更新