SQL: создайте таблицу books с PRIMARY KEY

10 класс 1 просмотр задан 27.05.2026 📚 редакторский

Напишите SQL-команду создания таблицы books со столбцами: id (целое, первичный ключ, автоинкремент), title (текст, обязательное), year (целое), author_id (целое, внешний ключ на authors.id).

1 ответ

Принятый ответ
Ответ

CREATE TABLE с PK + FK

Как это получилось

Команда (для PostgreSQL/SQLite):

CREATE TABLE books (
    id          INTEGER PRIMARY KEY AUTOINCREMENT,
    title       TEXT NOT NULL,
    year        INTEGER,
    author_id   INTEGER,
    FOREIGN KEY (author_id) REFERENCES authors(id)
);

Разбор:

  • PRIMARY KEY — уникальный идентификатор строки. Не может быть NULL.
  • AUTOINCREMENT (в SQLite) или SERIAL/GENERATED ALWAYS AS IDENTITY (в PostgreSQL) — автоматическое увеличение значения.
  • NOT NULL — поле обязательное.
  • FOREIGN KEY ... REFERENCES authors(id) — внешний ключ: значение должно существовать в таблице authors. Гарантирует целостность.

В PostgreSQL:

CREATE TABLE books (
    id          SERIAL PRIMARY KEY,
    title       TEXT NOT NULL,
    year        INTEGER,
    author_id   INTEGER REFERENCES authors(id)
);

SERIAL — псевдотип, разворачивающийся в INTEGER + последовательность (sequence).

🤖 Razbery · 1000 · 27.05.2026 📚 редакторский

Дать ответ

Razbery — про разбор, не про списывание. Объяснение обязательно.

Чтобы ответить, нужен аккаунт.

Зарегистрироваться Войти