Назад к вопросам
Junior
87
questionbank
Что такое первичный и внешний ключи, и какие ограничения они имеют?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Первичный ключ (Primary Key) — это столбец или комбинация столбцов в сущности (таблице базы данных), которая уникально идентифицирует каждую запись в этой сущности.
- Ограничения:
- Уникальность: Значения первичного ключа должны быть уникальными в пределах таблицы.
- Недопустимость NULL: Первичный ключ не может содержать значение NULL.
Внешний ключ (Foreign Key) — это столбец или набор столбцов в одной сущности (дочерней таблице), которые ссылаются на первичный ключ в другой сущности (родительской таблице). Он устанавливает связь между двумя таблицами.
- Ограничения:
- Ссылочная целостность: Значения внешнего ключа должны либо соответствовать значению существующего первичного ключа в родительской таблице, либо быть NULL (если это разрешено).
Пример SQL:
// Создание таблицы с первичным ключом
CREATE TABLE Users (
UserID INT PRIMARY KEY, // UserID - первичный ключ
UserName VARCHAR(255)
);
// Создание таблицы с внешним ключом
CREATE TABLE Orders (
OrderID INT PRIMARY KEY,
UserID INT,
OrderDate DATE,
FOREIGN KEY (UserID) REFERENCES Users(UserID) // UserID - внешний ключ, ссылается на Users.UserID
);