Може да има много причини:
- Натоварване на сървъра (малко вероятно, защото
SELECT
е бърз) - Тригери (вижте тук как да ги изброите за таблица ).
- Външни ключове (Списък на външните ключове и таблиците, към които те препращат )
- Много данни във всеки ред (
LOB
s, много колони). - Някой заключва редове в таблицата, които искате да изтриете (или цялата таблица). Вижте това публикация в блога как да изброявам ключалки . Тази дискусия също може да помогне.
Ако външните ключове са проблемът, обичайното решение е да се добавят индекси към външната колона:За всяко изтриване Oracle трябва да провери дали това би нарушило релация на външен ключ.