Oracle临时表数据插入到另一张表

时间:2022-01-09 00:47:07
我又一张表,程序插不进数据所以建了张临时表,程序先插入到临时表,然后每1分钟从临时表插入到这张表里,然后把临时表清空,但现在的问题是有些数据过去了也没问题,有些数据后来查不到,没有插过去,刚测试了几把,几条都好着,有一把数据刚开始查的时候有,但是再次查的时候又没了,临时表也清空了这是什么情况啊?大神们救救啊,在线等。。。。

4 个解决方案

#1


Oracle临时表数据插入到另一张表

#2


1、insert和delete同时提交,别分开commit,容易造成数据插入了,但是临时表未删除,造成数据重复
2、另外delete最好加上范围,限定只删除刚刚插入到正式表的数据
因为insert的过程中临时表可能又进新数据了,这样的数据最终就会丢失了
看你目前表的状态,这些字段没办法限定范围,建议在临时表中加入数据插入日期的字段

#3


刚试了一下,如果按照你的这种方式,很容易导致临时表与主表中的数据不一致,在向主表插入数据的时候临时表没有锁住,仍旧可以插入数据
可以如楼上所说,插入和删除同时提交,保证一致性

#4


写一个存储过程放在一起操作,分开写容易造成数据不一致,另外删除表的所有数据(如果数据量很大),建议使用truncate table 

#1


Oracle临时表数据插入到另一张表

#2


1、insert和delete同时提交,别分开commit,容易造成数据插入了,但是临时表未删除,造成数据重复
2、另外delete最好加上范围,限定只删除刚刚插入到正式表的数据
因为insert的过程中临时表可能又进新数据了,这样的数据最终就会丢失了
看你目前表的状态,这些字段没办法限定范围,建议在临时表中加入数据插入日期的字段

#3


刚试了一下,如果按照你的这种方式,很容易导致临时表与主表中的数据不一致,在向主表插入数据的时候临时表没有锁住,仍旧可以插入数据
可以如楼上所说,插入和删除同时提交,保证一致性

#4


写一个存储过程放在一起操作,分开写容易造成数据不一致,另外删除表的所有数据(如果数据量很大),建议使用truncate table