TGViewer
METANIT.COM METANIT.COM @devnull22 · 5.82K subscribers
Post #2673 2.17K
Внешние ключи vs ограничения. Многие путают эти понятия

Внешний ключ (foreign key): столбец, который устанавливает связь между двумя таблицами. Обычно реализуется как столбец в одной таблице (post), хранящий значения первичного ключа из другой таблицы (user) для обеспечения связи между ними.

Ограничение внешнего ключа (foreign key constraint): механизм, заставляющий СУБД обеспечивать целостность внешних ключей. Он гарантирует, что значения в столбце внешнего ключа (post→user_id) ссылаются на существующую запись в другой таблице (user→id)

Ограничения — полезное удобство (они поддерживают компонент «C» в ACID), но имеют свою цену: операции вставки, обновления и удаления в таблицах с ограничениями требуют дополнительных вычислительных ресурсов и операций ввода‑вывода для их соблюдения

Их удаление может привести к повышению производительности, но потребует переноса поддержки связей на уровень приложения. Приложения должны гарантировать, что их транзакции всегда оставляют эти связи в корректном состоянии
#sql
  • ❤‍🔥 12
  • 🤔 1
More from @devnull22
  1. Mar 19, 2026Добавил в руководство по JavaScript главу про работу с датами и временем с помощью Tempora…
  2. Mar 19, 2026Роскомнадзор перестал полностью справляться с блокировками в интернете Роскомнадзор (РКН)…
  3. Mar 18, 2026Минцифры опубликовало законопроект о государственном регулировании ИИ. Закон должен начать…
  4. Mar 18, 2026Microsoft призвала разработчиков создавать ИИ-приложения в Electron на Windows 11 Microsof…
  5. Mar 18, 2026Oracle анонсировала проект Detroit, который будет развиваться в составе OpenJDK и нацелен…
  6. Mar 17, 2026Вышла новая версия платформы Java - JDK 26. JDK 26 — краткосрочная версия с поддержкой Pre…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →