Oracle_delete很慢,可能表被锁住,需解除死锁,并使用truncate时表中的唯一/主键被启用的外键引用

表加锁、导致死锁原因

1.可能在Oracle中可以有计时器,在频繁操作数据库,update,insert,delete语句,在jobs中能查看到(如图)

Oracle_delete很慢,可能表被锁住,需解除死锁,并使用truncate时表中的唯一/主键被启用的外键引用

2.通过PL/SQL进入会话查看被锁的表,杀死进程进行解锁,网上都需要进行写语句,直接通过工具进行解锁

Oracle_delete很慢,可能表被锁住,需解除死锁,并使用truncate时表中的唯一/主键被启用的外键引用

3.

truncate表时,报错ORA-02266: 表中的唯一/主键被启用的外键引用 ,是oracle数据库主外键关联关系方面的问题。

解决以上问题:

1、禁用主键:

alter table 表名  disable primary key cascade;

2.清空表

truncate table 表名;

3.恢复启用主键

alter table 表名  enable primary key;

 

上一篇:drop、truncate 和 delete 的区别


下一篇:Mysql清空表(truncate)与删除表中数据(delete)的区别