Что такое Foreign Key (внешний ключ) в PostgreSQL?
Этот вопрос проверяет знание внешних ключей и их роли в поддержании целостности данных.
Короткий ответ
Foreign Key — это ограничение в PostgreSQL, которое гарантирует целостность данных между двумя таблицами. Он связывает столбец одной таблицы с первичным ключом другой, обеспечивая, что все значения во внешнем ключе существуют в связанной таблице.
Длинный ответ
Внешний ключ используется для создания связи между таблицами, обычно между родительской и дочерней таблицей. Он гарантирует, что значения в дочерней таблице существуют в родительской таблице, предотвращая добавление данных, которые нарушают эту связь. Внешний ключ также позволяет обновлять и удалять связанные данные с использованием каскадных операций.
Пример создания внешнего ключа:
CREATE TABLE orders (
order_id SERIAL PRIMARY KEY,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES customers (customer_id)
);Применение:
- Поддержание целостности данных между связанными таблицами.
- Обеспечение правильных ссылок и удаления данных.
- Использование каскадных операций для упрощения управления связанными данными.