在java项目里面用Sql语句把access数据库中数据插入到oracle数据库对应的表中、、数据量太大导入太慢了

把access数据库一个表的数据全部查询出来、然后一条一条判断oracle数据库中是否存在、要是不存在就插入、、这样的话数据量大的时候导入进去时间太长了、、有什么好的办法... 把access数据库一个表的数据全部查询出来、然后一条一条判断oracle数据库中是否存在、要是不存在就插入、、这样的话数据量大的时候导入进去时间太长了、、有什么好的办法吗、我用的是list、太慢了、高手帮帮忙吧,给我说一下怎么做、、我是个新手
我是用循环做的、、速度太慢了、这是项目里面的一个问题,哪位高手帮帮忙!我用的java+struts做的
展开
 我来答
百度网友acd2bef
2011-10-09 · TA获得超过1438个赞
知道小有建树答主
回答量:920
采纳率:100%
帮助的人:775万
展开全部
其实只要改变一下思路就可以了!
1、首先建立一个临时表,结构和目标表一致;假定:原表位sr_tab
create table st_tab as select * from sr_tab where 1==0;
2、将access的数据一次性导入到表st_tab
3、执行批量插入语句:
insert sr_tab values(select s* from st_tab where ID not in (select ID from sr_tab ));

这样的效率比你一条一条判断至少要快3倍以上。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式