其中有一种比较理想的方法是将数据筛选出来之后,存入Oracle数据库的临时表里,然后再将这张临时表整个查出来,for循环一行进行对access数据库的插入。方便了很多,不再需要在后台进行大量的循环操作。代码如下:
Procedure DC_Select_DZSJ
(
p_errorCode out number--错误代码
)
is
begin
p_errorCode := 0;
delete from t1;
insert into t1 (p_ksh,p_zkzh,p_kslbdm,p_kslbmc,p_xm,p_xb,p_mzdm,p_mz,p_byxxdm,p_zxmc,p_sf,p_sfzh,p_dz,p_yzbm,p_lxdh,p_kldm,p_kl,p_zf,ksh,p_zydm,p_zymc,p_xf)
select p_ksh,zkzh,kslbdm,kslbmc,xm,xb,mzdm,mz,byxxdm,zxmc,'吉林省',sfzh,dz,yzbm,lxdh1,kldm,kl,zf,ksh,zydm,zymc,xf from
((select * from
(select ksh as p_ksh,(select zkzh from zkz where zkz.ksh=ks.ksh)as zkzh,kslbdm,
(select mc from zd where zdm='kslbdm' and ks.kslbdm=zd.bm) as kslbmc,xm,
(select mc from zd where zd.zdm='xbdm' and ks.xbdm=zd.bm)as xb,mzdm,
(select mc from zd where zd.zdm='mzdm' and ks.mzdm=zd.bm)as mz,byxxdm,