用JAVA程序向SQL数据库导入Excel表,判断出SQL表中已存在的重复数据,并跳过重复的继续导入其他记录.

我的思路是在程序读取到Excel表的‘IdNumber’这一字段时,以其为唯一关键字段来写一条查询语句,查询数据库中重复的数据,然后不再导入这条重复的,进行下一字段的读取和导入。

自己试着写的,但是好像不对。
select count(0) as zs from table_c where 关键字段名称=b表的数据值
然后判断 zs的值是否大于0,如果大于0则说明数据库里面有值

select count(*) as zs from table_c where 关键字段名称=b表的数据值
你要的是这个吧?
老实说你每条数据查一次,要是有一百万条数据你想过你要查多久吗?你确定你的服务器扛得住?你可以这样解决:
select 关键字段名称 as zs from table_c
返回的是一个二维数组你可以把它拆开成一维数组,因为他每一行只有一个值,然后再用数组的contains方法判断是否存在,这样效率高很多
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-23
就是这样的啊:

select count(1) as zs from table_c where 关键字段名称 = IdNumber的值;

比如
sql = "select count(1) as zs from table_c where 关键字段名称 ='"+idnumber.值+'"";
第2个回答  2013-07-23
晕啊

你读取一条 查询一次数据库 那得多消耗资源啊

不可取,你在读取xls之前 就先查询一次数据库,将所有数据取出放在一个集合中

然后开始读取xls,每行与上面的集合进行对比,决定是否插入数据
相似回答