Почему SQL не может вывести зависимости таблиц при удалении нескольких таблиц с ограничениями? - PullRequest
2 голосов
/ 10 ноября 2010

Привет,

Это общий вопрос SQL, не связанный с какой-либо конкретной реализацией, а скорее с глобальными концепциями.

Давайте рассмотрим простой пример, у меня есть 2 таблицы:

  • Пользователь (с FK в группе)
  • * Группа 1010 *

Почему при выполнении DROP TABLE group, user; сервер не может вывести зависимости таблиц и переупорядочить имена таблиц для успешного удаления?

Какова цель, чтобы заставить его потерпеть неудачу?

  • Потому что разработчик уже так ленив, и им нужно несколько проблем с зависимостями в свое время ...
  • Потому что раньше ни у одного разработчика баз данных SQL не было этой идеи ...

Или без сарказма:

  • По дизайну ... плохой дизайн
  • В целях безопасности ... но не видите, для какого нарушения безопасности эта «функция» полезна?
  • Или это просто неправильное понимание концепции SQL с моей стороны

Хотелось бы понять, спасибо!

1 Ответ

3 голосов
/ 10 ноября 2010

В некоторых РСУБД, , таких как PostgreSQL , вы также можете использовать ключевое слово CASCADE для удаления зависимостей.

...