В предложении внешнего ключа сказано "on delete set null".Удалить - это операция DML, и если бы вы попытались удалить строки из таблицы dept
, соответствующие строки emp
были бы обновлены с помощью null
dept_id
.
Но это не такслучай - вы попытались удалить всю таблицу, операция DDL.Это недопустимо, потому что вы оставите ограничения для таблицы emp
, которые ссылаются на таблицу, которая больше не существует.Если вы также хотите удалить эти ограничения, вы можете использовать предложение cascade constraints
:
DROP TABLE dept CASCADE CONSTRAINTS