Все операторы SQL делятся на три группы в зависимости от того, с чем они работают.
Создание, изменение и удаление объектов БД.
#️⃣ DDL операторы
DDL предназначен для создания, удаления и изменения основных объектов реляционных СУБД.
💡 Таблица
Таблица — основной объект хранения информации в реляционной БД. Состоит из строк и столбцов, занимает физическое пространство и может быть постоянной или временной.
#️⃣ Синтаксис
#️⃣ Пример
При создании столбцов можно задавать ограничения — атрибуты, контролирующие допустимые значения.
📝 Символьные
Представляет строку фиксированной длины. Длина хранимой строки указывается в скобках, например, CHAR(10) - строка из десяти символов. И если в таблицу в данный столбец сохраняется строка из 6 символов (то есть меньше установленной длины в 10 символов), то строка дополняется 4 пробелами и в итоге все равно будет занимать 10 символов.Тип CHAR может хранить до 255 байт.
Совет
Используйте VARCHAR для имён, заголовков, email. Используйте TEXT для длинных описаний и комментариев.
🔢 Числовые
Представляет целые числа от -128 до 127, занимает 1 байт.
📅 Дата/Время
Хранит даты с 1 января 1000 года до 31 деабря 9999 года (c "1000-01 01" до "9999-12-31"). По умолчанию для хранения используется формат yyyy mm-dd. Занимает 3 байта.
Форматы DATE
DATE принимает разные форматы: 2024-05-25, 2024-5-25, 24-05-25 — но хранит всегда в формате yyyy-mm-dd.
📦 Прочие (Составные типы)
Хранит одно значение из списка допустимых значений. Занимает 1-2 байта.
📦 Прочие (Бинарные типы)
Хранит бинарные данные в виде строки длиной до 255 байт.
INSERT INTO
Добавление одной или нескольких строк в таблицу.
SELECT
Выборка данных из таблицы.
💡 Звёздочка *
SELECT * выбирает все столбцы. Удобно при разработке, но в продакшне лучше перечислять столбцы явно — это быстрее и надёжнее.
1)WHERE — фильтрация
Оператор WHERE задаёт условие: только строки, для которых оно истинно, попадают в результат.
Оба условия должны быть истинны. Приоритет — средний.
⚠ Приоритет
NOT (высший) → AND → OR (низший). При необходимости используйте скобки для явного порядка.
2)UPDATE — обновление
⚠ Опасность
UPDATE без WHERE обновит все строки таблицы! Всегда уточняйте условие, если хотите изменить только часть записей.
2)DELETE — удаление