Назад к вопросам
Junior
94
questionbank

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

Sobes Copilot

Получайте ответы в реальном времени

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

sobes.tech AI

Первичный ключ — это столбец или набор столбцов в таблице базы данных, которые уникально идентифицируют каждую строку в этой таблице.

Основные характеристики:

  • Уникальность: Каждое значение первичного ключа должно быть уникальным в пределах таблицы.
  • Непустота (NOT NULL): Первичный ключ не может содержать значение NULL.
  • Стабильность: Желательно, чтобы значения первичного ключа не менялись.

Назначение:

  • Обеспечение целостности данных (сущности).
  • Установка связей между таблицами (внешние ключи ссылаются на первичные).
  • Оптимизация запросов (часто используются для индексирования).

Пример создания таблицы с первичным ключом в SQL:

CREATE TABLE Customers (
    CustomerID int NOT NULL, // Столбец для первичного ключа
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    CONSTRAINT PK_Customer PRIMARY KEY (CustomerID) // Определение первичного ключа
);

Первичный ключ может быть составным, состоящим из нескольких столбцов:

CREATE TABLE OrderItems (
    OrderID int NOT NULL,
    ProductID int NOT NULL,
    Quantity int,
    CONSTRAINT PK_OrderItem PRIMARY KEY (OrderID, ProductID) // Составной первичный ключ
);

Часто используется автоматическая генерация значений для первичного ключа (например, автоинкремент).

CREATE TABLE Products (
    ProductID int NOT NULL IDENTITY(1,1), // Автоинкрементный первичный ключ
    ProductName varchar(255) NOT NULL,
    CONSTRAINT PK_Product PRIMARY KEY (ProductID)
);