Sobes.tech
Junior
136
questionbank

Что такое ключи в базе данных?

Ответ от нейросети

sobes.tech AI

Ключ в базе данных – это одно или несколько полей (столбцов) таблицы, которые служат для уникальной идентификации записей (строк) или установления связей между таблицами.

Типы ключей:

  • Первичный ключ (Primary Key; PK):
    • Уникально идентифицирует каждую запись в таблице.
    • Не может содержать NULL значения.
    • В таблице может быть только один первичный ключ.
  • Внешний ключ (Foreign Key; FK):
    • Устанавливает связь между двумя таблицами, ссылаясь на первичный ключ или уникальный ключ другой таблицы.
    • Обеспечивает ссылочную целостность, гарантируя существование ссылающейся записи.
  • Уникальный ключ (Unique Key; UK):
    • Гарантирует уникальность значений в указанных полях, но может содержать NULL значения (обычно не более одного NULL).
    • В таблице может быть несколько уникальных ключей.
  • Кандидатный ключ (Candidate Key):
    • Любой минимальный набор полей, способный уникально идентифицировать запись.
    • Из кандидатных ключей выбирается один первичный ключ.
  • Суперключ (Super Key):
    • Набор полей, который может уникально идентифицировать запись. Кандидатный ключ является минимальным суперключом.

Пример использования внешнего ключа:

CREATE TABLE Orders (
    order_id INT PRIMARY KEY, // Первичный ключ для таблицы Orders
    customer_id INT,
    order_date DATE,
    FOREIGN KEY (customer_id) REFERENCES Customers(customer_id) // Внешний ключ, ссылающийся на таблицу Customers
);

CREATE TABLE Customers (
    customer_id INT PRIMARY KEY, // Первичный ключ для таблицы Customers
    customer_name VARCHAR(255)
);