Sobes.tech
Back to questions
Junior — Middle
118

Какие ограничения существуют для определения первичного ключа в таблице базы данных SQL?

Answer from AI

sobes.tech AI

Ограничения для определения первичного ключа (PRIMARY KEY) в таблице SQL:

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

Пример определения первичного ключа:

CREATE TABLE users (
    id INT PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    email VARCHAR(100)
);

Или составной ключ:

CREATE TABLE orders (
    order_id INT,
    product_id INT,
    PRIMARY KEY (order_id, product_id)
);