db2batch使用存储过程和参数文件

时间:2013-11-14 22:29:46

标签: db2

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

我有一个存储过程,我想多次调用并提供文件中的参数,但是我很难找到显示如何完成此操作的文档。

1 个答案:

答案 0 :(得分:1)

使用参数文件的文档肯定不是很好。但是,您确实可以使用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,第二个参数是{{1} },并且都是VARCHAR(15)参数):

IN

此文件中有10对参数,但由于1 'First' 2 'Second' 3 'Third' 4 'Fourth' 5 'Fifth' 6 'Sixth' 7 'Seventh' 8 'Eighth' 9 'Ninth' 10 'Tenth' 标识符指定重复计数仅为5,因此db2batch将只读取参数文件中的前5行。如果指定的重复计数大于参数文件中的行数,则会从参数文件中获得没有相应值的重复的错误。

**注意:--#BGBLK将处理具有db2batch参数的过程,甚至可以处理返回结果集的存储过程,但我不知道如何获取它使用具有IN参数的存储过程。