java做了个excel导入功能,如何提高导入效率?

比如一张表,作为模板,表格的序号作为主键,不可以重复,加入此表格已经导入过一次,再进行第二次导入的时候,根据需要进行对比,如果数据库已经存在此序号,将更新此序号所在行的内... 比如一张表,作为模板,表格的序号作为主键,不可以重复,加入此表格已经导入过一次,再进行第二次导入的时候,根据需要进行对比,如果数据库已经存在此序号,将更新此序号所在行的内容,不存在则插入数据库.在进行第二次导入的时候会频繁的到数据库去查找更新插入等,所有效率非常低,导入非常慢,有什么方法可以提高效率? 展开
 我来答
307874134
2012-09-25
知道答主
回答量:35
采纳率:0%
帮助的人:19.6万
展开全部
id是主键根本就不会插入重复记录吧,只是插入时会报异常,循环插入记录,捕获这个异常continue不行么
更多追问追答
追问
主键当然是不能重复,我需要的是当重复的时候就更新数据库的记录.
追答
那就把重复的重新装一个List,插入完了更新这个List,行不
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yzjszl256
2012-09-25 · TA获得超过201个赞
知道小有建树答主
回答量:223
采纳率:0%
帮助的人:160万
展开全部
insert into XX on duplicate key update
更多追问追答
追问
不明白...
追答
这是mysql里面 重复插入的时候就更新的语法啊 后面加on duplicate key update就和你的要求一样了,(如果主键已经存在,就变为更新的语句)不知道你用的是不是mysql
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
六阳阳长生
2012-09-25 · TA获得超过188个赞
知道小有建树答主
回答量:179
采纳率:0%
帮助的人:70.5万
展开全部
请百度jxl jar包的用法
追问
....我不用那个,这个导入是自己编写的,目前公司都是用的这个导入功能.比较通用,如果用jxl的话不好搞
追答
第一,在多数据量的数据库里面比对,肯定会很慢,可以建立索引,或者视图,比对这个,会很快,或者,将序号存入文本,进行比对,减轻数据库对比时间和负担,推荐第一种方式。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式