2 a1406936850 a1406936850 于 2013.12.17 15:11 提问

databel中的数据插入到数据库

excel中的数据是每天累加的,但是每次都要全部导入数据库,所以数据库中的数据会有大量的重复,浪费资源,求一个办法,可以去除重复,并且速度要快一点;目前我采用的方法是,每词都去数据库中判断,如果存在的话就更新,不存在的话就插入,速度非常慢,不到1w条数据,都要用奖金两分钟,求各位大神们给一个更好的办法

3个回答

zhangdiies111
zhangdiies111   2013.12.27 18:45
已采纳

你每次都要去访问这样会浪费大量的资源,你可以先将excel中的关键列获取出来,放到内存中,在内存中进行判断,这样会提高点效率。

mevip
mevip   2013.12.17 21:10

记录Excel中最后一条数据的ID或者Excel中的总条数n,下次再导入时直接从第n+1条开始导入。

mevip
mevip Excel表中增加一个标志列,每次修改内容或新增一行时必须设置该标志,在导入时只检索该标志有效的行。
4 年多之前 回复
a1406936850
a1406936850 就是第二次导入的时候有可能以前的数据被修改了
4 年多之前 回复
a1406936850
a1406936850 这个办法是不错,但是如果涉及到以前的数据需要修改的话,就又让人头疼了
4 年多之前 回复
wangwu2235
wangwu2235   2014.02.28 14:37

如果是全字段的判断的话就需要全部比较,那么优化应该在怎么读取数据,和怎么比较的问题上了,首先一次性加载Excel的数据到内存表中,然后一条一条用sql判断,重复的直接跳过。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Bmp例子,但只向数据库中插入一条数据
Bmp例子,但只向数据库中插入一条数据 Bmp例子,但只向数据库中插入一条数据
向数据库中插入(添加)数据
向数据库中插入(添加)数据
DataSet中的数据全部插入数据库
首先,用Select语句查询需要插入数据的表,用Top 1查一行就够了,这个是为了给SqlDataAdapter生成表的架构用的。string strSql = "Select * from TableNeedToUpdate"; SqlDataAdapter da = new SqlDataAdapter(strSql, SqlConn); DataSet ds = new
如何瞬间在数据库插入一百万条记录
这两天发现了一个东西很好玩:如何在你的数据库中插入一百万条记录(要求三分钟之内)hoo~~hoo~~~1 首先 create table news     (          newsid int primary key auto_increment,        newstitle varchar(100),        newscontent varchar(200),        n
java 向数据库插入记录
通过Statement /** * * @author Administrator *接口Statement * 所有已知子接口: * CallableStatement, PreparedStatement (一般使用这个) * 对象由Connection.createStatement()创建 public class Insert { public static
数据库插入百万数据
这是对一次数据库作业的深究首先说一下作业题目要求:建立一张包含四个字段的表,表名为test         第一列为id,主键,自增。                第二列为col1,随机为Mike,Bob,Jack,Alice,Cathy,Ann,Betty,Cindy,Mary,Jane中的一个                第三列为col2,随机为一个5位字母,字母限
向数据库中插入多条数据
http://blog.csdn.net/zhonghua1989/article/details/8236419
把Excel中的数据插入到数据库中已经存在的表中
首先,创建一个表: create table aaa(name varchar(10),user_id varchar(20)); 然后插入数值: 注意要转换Excel中的数据类型 insert into aaa(name) select cast(保管人 as varchar(10)) FROM openrowset( 'Microsoft.Jet.OLEDB.4.0',
将excle数据批量插入到数据库表中
项目实例结构: 1.model实体类 package com.model; public class Test { private int num1; private String num2; private String num3; private String num4; public int getNum1() { return num1; } p
Android数据库操作-正确的把数据插入到数据库中
本文译自:http://developer.android.com/training/basics/data-storage/databases.html 把重复的或结构化的数据(如通信录信息)保存到数据库中是很好的想法。本节课假设你熟悉通常的SQL数据库,并帮助你在Android平台上开始使用SQLite数据库。在Android平台上,你需要使用的数据库API包含在android.data