一条delete语句下去,一开始是外间约束错误,然后加上5月31日这个条件就不会了,但是半个小时都能没能删除这些垃圾数据,打开后台的session一看,3条类似select /*all rows*/ count(1) from card...的记录在运行,这个应该是oracle检验有没有发生外键冲突的语句,card,account,score表都和customer表有外键关联,难怪整那么久,account、score表的外键都删除后再次delete,还是慢的无法忍受。最后只好把card表上的外键也删除了,然后瞬间就把13万记录删除了,再在card表上重新建立外键。
这种做法其实有风险,可能导致card表的某些记录关联的customer记录被删除,但是考虑到现在的情况,这个可能性很小。而且让oracle保留外键的前提下去删除,不知道半天能不能做完。
526



被折叠的 条评论
为什么被折叠?



