db2如何把数据导出成sql语句

 我来答
匿名用户
2014-02-20
展开全部
你的意思是将数据记录转换成一条条的 insert 语句?
db2 是没有这样的功能的。需要自己开发。
但貌似可以通过自定义存储过程的方式来实现。这也算是个思路吧。之前google到国外有人通过存储过程实现了,并有例程,但当时由于版本问题,本人没有实现。
yanjiusheng6
2018-05-18
知道答主
回答量:1
采纳率:0%
帮助的人:870
展开全部
create or replace procedure gen_insert_sql
begin
declare v_columns1 varchar(5000);
declare v_columns2 varchar(5000);
declare v_sql varchar(20000);
for x1 as c1 cursor for
select tabschema,tabname
from syscat.tables
where type='T' and owner='DB2INST1'
and tabname='T_TEST1'
do
for x11 as c11 cursor for
select colname
from syscat.columns
where tabschema=x1.tabschema and tabname=x1.tabname and generated=''
do
set v_columns1='';
if v_columns1=''
then
set v_columns1=x11.colname;
else
set v_columns1=v_columns1||','||x11.colname;
end if;
set v_columns2='';
if v_columns2=''
then
set v_columns2=chr(39)||x11.colname||chr(39);
else
set v_columns2=v_columns2||','||chr(39)||x11.colname||chr(39);
end if;
set v_sql=
'export to ''c:\'||trim(x1.tabschema)||'.'||trim(x1.tabname)||'.sql'' of del'||chr(13)||chr(10)
||'modified by nochardel'||chr(13)||chr(10)
||'select ''insert into '||trim(x1.tabschema)||'.'||trim(x1.tabname)||'('||v_columns1||') values (''||'||v_columns2||'||'')''||''@'''||chr(13)||chr(10)
||'from '||trim(x1.tabschema)||'.'||trim(x1.tabname);
call sysproc.admin_cmd(v_sql);
end for;
end for;
end@
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式