Перейти к содержанию

Создание таблиц: CREATE TABLE и типы данных

Программирование SQL Сложность 1/5

Начало урока

Создание таблиц: CREATE TABLE и типы данных

Спроектируй собственные таблицы и выбери правильную коробку для каждого значения

Главная идея: До сих пор ты читал данные, которые уже лежали в таблицах. Теперь ты становишься строителем. CREATE TABLE позволяет спроектировать совершенно новую таблицу: назвать её столбцы и выбрать тип данных для каждого. Тип данных - это обещание о том, какое значение будет хранить столбец.
К концу урока ты сможешь:
  • написать команду CREATE TABLE с несколькими столбцами,
  • выбрать правильный тип данных: INT, DECIMAL, VARCHAR, TEXT, DATE, DATETIME, BOOLEAN,
  • сделать столбец обязательным с помощью NOT NULL и задать запасное значение через DEFAULT,
  • изменить таблицу позже с помощью ALTER TABLE,
  • удалить таблицу командой DROP TABLE.

1. Что делает CREATE TABLE

Представь таблицу как пустую электронную таблицу, которую ты проектируешь до того, как кто-то введёт в неё данные. Ты даёшь таблице имя, а затем перечисляешь её столбцы. Для каждого столбца пишешь две вещи: имя столбца и его тип данных.

Вот самая простая форма команды:

CREATE TABLE table_name (
    column1  TYPE,
    column2  TYPE,
    column3  TYPE
);

Описания столбцов находятся в круглых скобках, разделяются запятыми, а вся команда заканчивается точкой с запятой. Запуск команды пока не добавляет ни одной строки - он только строит пустую структуру, готовую к данным, которые ты добавишь в следующей теме.

2. Типы данных: правильная коробка для каждого значения

Тип данных сообщает базе, какое значение может хранить столбец. Выбрать правильный тип - как выбрать правильную ёмкость на кухне: молоко ты хранишь в бутылке, а не в бумажном пакете. Тип защищает твои данные и экономит место.

Вот повседневные типы, которыми ты будешь пользоваться снова и снова:

ТипХранитПример значения
INTЦелые числа (без точки)7, -40, 2026
DECIMAL(5,2)Точные числа с дробной частью19.99, 4.50
VARCHAR(50)Короткий текст до выбранной длины'Sara', 'Blue'
TEXTДлинный текст (абзацы, заметки)целый отзыв
DATEКалендарный день'2026-09-01'
DATETIMEДень и время'2026-09-01 08:30:00'
BOOLEANИстина или ложь (да/нет)TRUE, FALSE

Присмотримся ближе:

  • INT - для подсчёта: возраст, класс, сколько книг. Дробей нет.
  • DECIMAL(5,2) означает "до 5 цифр всего, из них 2 после точки". То есть можно хранить числа до 999.99. Используй его для денег и точных измерений, потому что он не округляет неожиданно.
  • VARCHAR(n) хранит короткий текст, и ты выбираешь наибольшую длину n. VARCHAR(50) означает "до 50 символов". Сюда подходят имена, цвета и города.
  • TEXT - для длинного текста, длину которого нельзя угадать: комментарий, описание, история.
  • DATE хранит день как YYYY-MM-DD. DATETIME хранит ещё и время - идеально для "когда это произошло".
  • BOOLEAN отвечает на вопрос да/нет, например "активен ли этот ученик?".

Заметка о диалектах В MySQL BOOLEAN на самом деле хранится как крошечное число: TRUE - это 1, а FALSE - это 0. В PostgreSQL есть настоящий булев тип, а SQLite гибок к типам, но идея везде одна и та же.

Продолжите этот урок на YourAIZone

В полном уроке — объяснение целиком, разобранные примеры, частые ошибки, тесты с мгновенной проверкой и ИИ-репетитор. Начните сразу как гость или создайте аккаунт, чтобы сохранять прогресс.

В полном уроке

  • Объяснение целиком
  • Разобранные примеры
  • Частые ошибки и как их избежать
  • Тестовые вопросы: 15
  • ИИ-репетитор, который отвечает на вопросы по теме
  • Отслеживание прогресса для ученика, родителей и учителя