Ограничено ли усечение родительской таблицы, даже если дочерняя таблица пуста? - PullRequest
1 голос
/ 02 марта 2012

Я могу использовать delete from table_name, который работает.
Почему бы не truncate?

1 Ответ

5 голосов
/ 02 марта 2012

Попробуйте:

TRUNCATE TABLE <tablename>;

после отключения ограничения FK.

Усечение нельзя откатить, так как оно DDL, а не DML , поэтому будьте осторожны.Он также сбрасывает верхнюю отметку усеченной таблицы.

см. здесь для объяснения документации Oracle.и здесь для сравнения.

Примечание: Нельзя обрезать родительскую таблицу с включенным ограничением внешнего ключа.Вы должны отключить ограничение перед усечением таблицы.Исключением является то, что вы можете обрезать таблицу, если ограничение целостности является самоссылочным.

Из документации Oracle .

Надеюсь, это поможет ...

...