Внешние ключи
Внешний ключ не позволяет хранить ссылку на несуществующую запись.
Проверено Изменено
Плохо
user_id uuid -- связь известна только коду
Хорошо
user_id uuid REFERENCES users(user_id)
ON DELETE RESTRICT
Почему это важно
Без ограничения легко получить осиротевшие данные.
Когда применять
CASCADE подходит только для действительно зависимых записей. В распределённом хранилище без FK нужен документированный контроль целостности.
Кто что делает
Человек
Выбирает поведение связанных данных при удалении и переносе.
AI-агент
Готовит схему или миграцию, проверяет граничные значения и совместимость с текущими запросами.
Контроль результата:
- Проверьте создание неверной ссылки и удаление родителя.
Как проверить у себя
- Проверьте создание неверной ссылки и удаление родителя.
Первоисточники
История изменений на GitHubДата проверки отражает содержательную сверку. Синхронизация сайта не обновляет её автоматически.