SQL - Типы данных: Путеводитель для начинающих

Здравствуйте, будущие маги баз данных! Сегодня мы отправимся в увлекательное путешествие в мир типов данных SQL. Не волнуйтесь, если вы никогда не писали ни строчки кода — я буду вашим доброжелательным проводником, и мы будем двигаться шаг за шагом. К концу этого руководства вы будете поражены тем, сколько вы узнали. Так что давайте окунемся в это!

SQL - Data Types

Что такое типы данных SQL?

Представьте, что вы организовываете كبيرое празднество. Вам нужно следить за разными вещами: количеством гостей (целое число), стоимостью еды (число с десятичными знаками), датой праздника (дата) и темой (текст). В SQL типы данных resemble этим категориям — они помогают нам организовывать и хранить разную информацию эффективно.

Типы данных SQL — это строительные блоки, которые определяют, какой вид данных можно хранить в столбце базы данных. Они обеспечивают, чтобы правильный вид информации шел в правильное место, как вы не стали бы ставить дату праздника在那里, где должно быть количество гостей!

Определение типа данных

Когда мы создаем таблицу в SQL, нам нужно указать тип данных для каждой колонки. Вот простой пример:

CREATE TABLE Party (
guest_count INT,
food_cost DECIMAL(10,2),
party_date DATE,
theme VARCHAR(50)
);

В этом примере:

  • guest_count — целое число (целое число)
  • food_cost — десятичное число с максимально 10 знаками, из которых 2 после десятичной точки
  • party_date — дата
  • theme — строка переменной длины, которая может содержать до 50 символов

Виды типов данных SQL

Теперь давайте рассмотрим основные категории типов данных SQL. Представьте их как большие семьи, к которым принадлежат все конкретные типы данных.

1. Числовые типы данных

Эти типы предназначены для хранения чисел. Помните математику? Это как там, но в SQL!

Целочисленные типы

Для целых чисел:

CREATE TABLE NumberGame (
small_number TINYINT,
medium_number INT,
big_number BIGINT
);
  • TINYINT: Для маленьких чисел (обычно от -128 до 127)
  • INT: Для средних чисел (примерно от -2 миллиардов до 2 миллиардов)
  • BIGINT: Для真的很 больших чисел

Десятичные типы

Для чисел с десятичными знаками:

CREATE TABLE PreciseData (
price DECIMAL(10,2),
scientific_value FLOAT,
another_value DOUBLE
);
  • DECIMAL(10,2): Точные десятичные числа (в этом случае, до 10 знаков с 2 после десятичной точки)
  • FLOAT и DOUBLE: Для научных расчетов, где extreme precision не требуется

2. Строковые типы данных

Эти типы предназначены для хранения текста. Представьте их как контейнеры для слов и предложений.

CREATE TABLE TextInfo (
short_text CHAR(10),
variable_text VARCHAR(100),
long_story TEXT
);
  • CHAR(10): Строка фиксированной длины (всегда 10 символов)
  • VARCHAR(100): Строка переменной длины (до 100 символов)
  • TEXT: Для длинных фрагментов текста, таких как абзацы

3. Датированные и временные типы данных

Для хранения дат и времен!

CREATE TABLE TimeTracker (
today DATE,
right_now TIME,
precise_moment DATETIME
);
  • DATE: Хранит дату (YYYY-MM-DD)
  • TIME: Хранит время (HH:MM:SS)
  • DATETIME: Хранит дату и время

4. Булевский тип данных

Для хранения значений true/false. Это как задавать да/нет вопрос!

CREATE TABLE SimpleFacts (
is_fun BOOLEAN
);
  • BOOLEAN: Хранит TRUE или FALSE

5. Бинарные типы данных

Для хранения бинарных данных, таких как изображения или файлы.

CREATE TABLE MediaFiles (
profile_picture BLOB
);
  • BLOB: Binary Large Object, для хранения больших бинарных данных

Типы данных в MySQL, SQL Server, Oracle и MS Access базах данных

Разные системы баз данных могут иметь slightly different имена или варианты этих типов данных. Давайте посмотрим на сравнение:

Тип данных MySQL SQL Server Oracle MS Access
Целое число INT INT NUMBER INTEGER
Десятичное DECIMAL DECIMAL NUMBER DECIMAL
Строка переменной длины VARCHAR VARCHAR VARCHAR2 TEXT
Дата DATE DATE DATE DATE/TIME
Булево BOOLEAN BIT NUMBER(1) YES/NO
Большой текст TEXT TEXT CLOB MEMO
Бинарный BLOB VARBINARY BLOB OLE OBJECT

Запомните, although concepts такие же, exact syntax может немного отличаться в разных системах баз данных. Это как в разных языках могут быть slightly different слова для одного и того же!

Заключение

Поздравления! Вы только что сделали первый большой шаг в мир типов данных SQL. Мы рассмотрели основы того, что такое типы данных, как их определять и рассмотрели основные категории. Мы даже заглянули, как разные системы баз данных обрабатывают эти типы.

Запомните, выбор правильного типа данных критически важен. Это как выбирать правильный контейнер для разных предметов на кухне — вы не стали бы хранить суп в перечнице, правда? Использование подходящего типа данных обеспечивает эффективность вашей базы данных и правильное хранение данных.

По мере продолжения вашего пути в SQL вы станете более комфортно чувствовать себя с этими типами и научитесь, когда их использовать. Не бойтесь экспериментировать — это как мы все учимся! И кто знает? Может быть有一天 вы спроектируете базу данных для следующей большой социальной сети или революционного приложения. Возможности безграничны!

Продолжайте практиковаться, stay curious, и счастливого кодирования!

Credits: Image by storyset