Трябва да замените оператора TRUNCATE с операторите DELETE, по-бавни и регистрирани, но това е начинът да го направите, когато ограниченията са налице.
DELETE mytablename;
Или това, или можете да намерите външните ключове, които препращат към въпросната таблица, и да ги деактивирате временно.
select 'ALTER TABLE '||TABLE_NAME||' DISABLE CONSTRAINT '||CONSTRAINT_NAME||';'
from user_constraints
where R_CONSTRAINT_NAME='<pk-of-table>';
Къде pk-of-table
е името на първичния ключ на съкращаваната таблица
Изпълнете изхода на горната заявка. Когато това е направено, не забравяйте да ги активирате отново, просто променете DISABLE CONSTRAINT
в ENABLE CONSTRAINT