А что такое SERIAL и чем он отличается от INT?

В SQL, когда вы создаёте поле для идентификатора (id), ключа в таблице, часто используется либо INT, либо SERIAL. Они похожи, но не совсем одно и то же.

  • INT — просто числовой тип данных. Если вы хотите, чтобы значения увеличивались автоматически (1, 2, 3, …), вам придётся сами этим управлять или использовать дополнительный механизм.
  • SERIAL — это удобный ярлык (синтаксический сахар), который говорит базе: «Создай мне INT-поле, и настрой так, чтобы оно автоматически увеличивалось при каждом новом INSERT.»

То есть, когда вы пишете:

то… и здесь хочется привести пример, который раскрывает более полную версию запроса.

Но тут мы упираемся в диалекты SQL. На практике вы будете пользоваться какой то конкретной реализацией SQL — например, MySQL, PostgreSQL или MSSQL.

В PostgreSQL полный запрос будет выглядеть так:

Отдельно объявляется т.н. последовательность (SEQUENCE), и потом она используется для столбца users.id.

В MySQL это выглядит иначе:

Мало букафф? Читайте есчо !

Нормализация базы данных, разбираемся с нормальными формами на примере

Июль 14, 2025 г.

Нормализация - это поэтапный процесс, происходит по шагам. Каждый шаг — это нормальная форма (НФ), которая обычно требует, чтобы предыдущий этап нормализации был выполнен. Всего их выделяют шесть, но чаще всего достаточно первых четырёх. Я рассмотрю их ...

Читать

Что такое CROSS JOIN

Июль 4, 2025 г.

Конструкция CROSS JOIN в SQL — это один из видов JOIN, который создаёт декартово произведение двух таблиц: каждая строка из первой таблицы соединяется со всеми строками второй. Если: Таблица A содержит m строк, Таблица B содержит n строк, ...

Читать

SQL-инъекция: как работает и как защититься

Июль 10, 2025 г.

SQL-инъекция (SQL Injection) — это распространённая и весьма опасная уязвимость веб-приложений. Она позволяет злоумышленнику вмешиваться в SQL-запросы, ...

Читать

SQL JOIN на пальцах: таблицы, примеры, схемы

Сентябрь 19, 2017 г.

Присоединение таблиц в запросах - это базовый инструмент в работе с базами данных. Давайте рассмотрим какие присоединения (JOIN) бывают, и что от этого ...

Читать
 

Комментарии к «А что такое SERIAL и чем он отличается от INT?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: