db2存储过程报错,求大神解答

存储过程:begindeclarevarTabName1varchar(20);declarevarTabName2varchar(20);declarecycle_en... 存储过程:
begin
declare varTabName1 varchar(20);
declare varTabName2 varchar(20);
declare cycle_end int default 0;
declare var_sql varchar(2000);
declare cursor1 cursor for select mysql_tabname,db2_tabname from bir.test;
select count(*) into cycle_end from bir.test ;
open cursor1;
fetch cursor1 into varTabName1,varTabName2;
while cycle_end>0 do
set var_sql='load from ''/home/db2inst1/tmp/'||varTabName1||'.txt''of del modified by codepage=1208 replace into'||varTabName2;
execute immediate var_sql;
fetch cursor1 into varTabName1,varTabName2;
set cycle_end=cycle_end-1;
end while;
close cursor1;
end

运行报错: [Error Code: -104, SQL State: 42601] DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=load from '/home/db2inst1/tmp/oss.te;BEGIN-OF-STATEMENT;<variable_set>, DRIVER=4.13.127

目的是为了将数据导入表中
展开
 我来答
13s13
2014-01-10 · 超过23用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:65.7万
展开全部
存储过程中是不支持导入语句的吧
更多追问追答
追问
可是我单独将导入语句拿出来就可以用啊,我怀疑是不是我在写动态sql的时候有错误,百度了好久都没找出原因,刚接触这个
追答
我的意思是,在db2的存储过程中不可以写load 语句,就不支持这种用法
load是db2命令,而不是sql
你要做的事情只能用shell来实现
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式