社区
Java SE
帖子详情
oracle插入数据,防止插入重复记录
olkldkslaa
2012-04-26 01:58:15
从access表中提取数据,校验后插入oracle表,并且防止插入重复的记录。
我现在的实现方式是每插入一条之前就查询oracle一次,如果不存在此记录就插入,已经存在就不执行插入,但是效率很低,请问要怎么实现才能效率高点呢?
...全文
1148
15
打赏
收藏
oracle插入数据,防止插入重复记录
从access表中提取数据,校验后插入oracle表,并且防止插入重复的记录。 我现在的实现方式是每插入一条之前就查询oracle一次,如果不存在此记录就插入,已经存在就不执行插入,但是效率很低,请问要怎么实现才能效率高点呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
oqqZoro
2013-11-19
打赏
举报
回复
1
这CSDN的水分受不了了 明显的说同步 设主键 设毛线啊 说了不重复 请答题的时候拿稳了答 怎么全是这样的 能设主键还用来这里问吗
zlyshmily
2012-10-09
打赏
举报
回复
请问下楼主,这个问题我现在也遇到了,有解决方案吗
olkldkslaa
2012-04-26
打赏
举报
回复
已经解决了,我现在把oracle中的表先读到一个set集合里,然后插入的时候在set里判断就可以了,
wang1986614
2012-04-26
打赏
举报
回复
我这儿也是每次插入都会判断该记录是否存在,通过几个非空字段判断的;如果不存在则插入,存在的话就不操作,这些都是放在过程中的
wang1986614
2012-04-26
打赏
举报
回复
我这里有类似的,我是把执行的语句封装成过程,放到缓存中,每次读取缓存,只是参数值在变,这样你不用每次都去生成查询、执行,有一次,后面的都是读取缓存了
z25765339
2012-04-26
打赏
举报
回复
不知道你说的重复是什么意思
两条数据完全一致?
两条数据的主键一直?
其他??
nxvan
2012-04-26
打赏
举报
回复
能不能把oracle的表读入内存里进行判定
olkldkslaa
2012-04-26
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
你是导数据还是干吗?
都是一条条操作的吗?
[/Quote]是倒数据
olkldkslaa
2012-04-26
打赏
举报
回复
因为是从access中的一个表提取数据,然后插入到oracle中的三个表中,主键有格式要求,所以我自己写的生成主键的代码
olkldkslaa
2012-04-26
打赏
举报
回复
在向oracle插入数据的时候是我自己生成的主键,所以主键肯定是不会重复,也就是说把倒数据的操作执行两次也都能插进去
sffx123
2012-04-26
打赏
举报
回复
还有种方法,如果数据量不大的话,可以把库里的数据在程序启动的时候给缓存起来,查询的时候直接查就行了减少跟数据库的交互。
经常在黑云中出没
2012-04-26
打赏
举报
回复
如果不是主键,也可以设置字段的唯一性的
安特矮油
2012-04-26
打赏
举报
回复
建议在java里面校验
良才2015
2012-04-26
打赏
举报
回复
设置主键,这把校验的工作就交给oracle自身了。
如果你想每个字段都不一样,那没办法,你就一个个去比较了
gukuitian
2012-04-26
打赏
举报
回复
你是导数据还是干吗?
都是一条条操作的吗?
oracle
防止
插入
重复
数据
有时候用
oracle
的
数据
库,
插入
数据
的时候需要判断一下该条
数据
是否已经存在。我们的第一思路如下,首先执行下面这个sql: [sql] view plain copyselect count(*) isExists from t_test_lll; 然后判断...
oracle
插入
时判断重复,
Oracle
里通过merge语句判断重复
插入
由于项目中需要用到批量
插入
,为了
防止
用户
插入
重复的
数据
,需要先判断
插入
的
数据
是不是已经存在,如果存在则忽略这次
插入
,否则
插入
这条
数据
,刚开始的时候是先用一条SQL语句判断,如果返回结果是真(记录已经存在)...
【
Oracle
数据
库】批量
插入
数据
,并避免
数据
重复
插入
,
插入
数据
去重(mybatis)
若指定的字段有一致的,则不
插入
数据
, 需在
插入
数据
的后面增加以下判断。union去重并排序,union all直接返回合并的结果,不去重也不排序;
oracle
插入
数据
不重复,
oracle
避免重复
插入
数据
using keyword :merge INTO ----------------------- merge into t1 using (select 1 a,3 b from dual) t2 on (t1.a = t2.a) when matched then update set t1.b = t1.bt2.b when not matched then insert (t1.a,t1....
Oracle
防止
数据
重复
插入
insert when (not exists (select 1 from表名where id = '条件')) theninto 表名(增加的字段 ) select '
插入
的值,与字段对应' from dual;...mysql
防止
数据
重复
插入
insert … select … where not exi...
Java SE
62,634
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章