最近工作,突然发现发现一个ORACLE的BUG, 就是INSERT与SELECT的结果集不一致,比如,加入A表中有10条记录,B表结构与A表一样,执行语句 INSERT B SELECT * FROM A,结果执行完后查询A表,无一条记录,怪哉。上网查看,原来是ORACLE的一个BUG,该BUG出现诡异,不知道真正触发的话需要什么条件,该BUG在ORACLE 10.0.2.4版本中解决了。但是针对自己实践,以下条件有可能触发:
1. SELECT 的操作语句比较复杂,另外SELECT操作中涉及4张以上的表
2. SELECT 操作中如果涉及2张以上的表,等值关联情况容易出现,将等值关联改为LEFT JOIN就OK,怪哉。
1. SELECT 的操作语句比较复杂,另外SELECT操作中涉及4张以上的表
2. SELECT 操作中如果涉及2张以上的表,等值关联情况容易出现,将等值关联改为LEFT JOIN就OK,怪哉。