使用KETTLE调用存储过程
1.创建调用存储过程的转换
1.1创建转换
点击右上角【文件】->【新建】->【转换】
1.2添加步骤
1.2.1 在新创建的转换中添加【表输入】,【调用DB存储过程】步骤
在右侧【核心对象】中搜索【表输入】,【调用DB存储过程】将其拖到新创建的转换中即可
1.2.2 连接【表输入】和 【调用DB存储过程】
按住【Shift】,鼠标左键点击【表输入】,向右拉到【调用DB存储过程】上
即可连接二者
然后【Ctrl+S】保存转换
1.3配置调用参数
1.3.1配置【调用DB存储过程】参数
1.3.1.1双击打开【调用DB存储过程】
1.3.1.2参数配置
1).数据库连接:如果已有要调用的过程的数据库连接,直接输入框,在显示的列表选择连接即可
如果没有点击新建,创建连接信息,格式请查看https://blog.csdn.net/python_go/article/details/102535024
2). 存储过程名称:保证数据库连接正确,点击【查找】,在显示的列表中双击选中要调用的过程名称
3). 返回值名称: 不填 (如果填写可能会导致调用存储过程报错)
4). 返回值类型:查看存储过程返回值类型,如VARCHAR2 类型选择String
5). 存储过程调用参数配置: 查看存储过程参数信息(有多少填多少)
名称: 与存储过程中参数名称保持一致
方向:与存储过程各个参数方向保持一致
类型:与存储过程参数类型贴近,如VARCHAR2 类型选择String
参数的顺序也与存储过程保持一致
配置完成后,点击【确定】,然后【Ctrl+S】进行保存
例如:
1.3.2配置【表输入】
双击打开【表输入】,将存储过程要传入的参数写入,语句如下,同时选中下方的【替换SQL语句中的变量】
SELECT '${DATA_DATE}' as P_DATA_DATE,'${TABLENAME}' as P_TABLENAME FROM DUAL
例如:
1.3.3 配置转换输入参数
右键点击转换空白处,打开【转换设置】->【命名参数】,
配置调用存储过程要使用的输入参数(与【表输入】的SQL语句中的变量参数一致)
至此配置完成,可以运行转换。
注意
1. 转换的输入参数名称要与表输入中的传入参数保持一致,例如:
2.表输入中AS的别名要与调用DB存储过程中的传入参数名称保持一致
因此可将转换输入的参数名称,与表输入中的名称,调用DB存储过程的参数名称都保持一致
调用DB存储过程的参数名称可以和调用的存储过程参数名称不一致,但意思最好相近