Типи даних в SQL
Типи даних в SQL важливо знати, щоб правильно і грамотно проектувати бази даних, правильно обраний типу даних в SQL може дуже сильно полегшити роботу іншим розробникам. Тому не раджу вам пропускати розділ про типи даних і завжди, коли ви знайомитеся з новою СУБД. звертати увагу на типи даних, які підтримує програма і на те, як вона ці типи даних обробляє.
Типи даних в SQL
Розглянемо типи даних, які є в мові SQL. У кожного стовпця таблиці (у атрибута) повинен бути тип даних для значень, які зберігаються в стовпці. Тип даних для стовпця визначається при створенні таблиці, а ще краще, коли він визначається на етапі проектування баз даних.
Мова SQL ділить дані на п'ять типів:
- Цілочисельний тип даних SQL.
- Речовий тип даних SQL.
- Типи даних дати і часу SQL.
- Строковий тип даних SQL.
- Строковий тип даних SQL в кодування Юнікод.
Давайте подивимося, що включає в себе кожен з типів даних SQL і які значення вони дозволяють нам зберігати.
Цілочисельний тип даннихSQL
Цілочисельний тип даних в SQL досить таки широкий і залежить від реалізації СУБД, знизу в таблиці лише деякі типові приклади целочисленного типу даних SQL.
Максимальна довжина 231 байт. Зверніть увагу: одиниці виміру типу даних varbinary (max) - байти.
Хочу звернути вашу увагу на те, що кожна СУБД підтримує свій набір типів даних і розмірностей, ми розглянули базові типи даних мови SQL, в наступній темі ми розглянемо типи даних, які підтримує SQLite3.
Знакові і без знакові типи даних в SQL
Хочу звернути вашу увагу на те, що в деяких СУБД числові типи даних можуть ділитися на знакові і без знакові типи даних. І це абсолютно різні типи даних.
Наведемо приклад практичного застосування типів даних SIGNED і UNSIGNED. Наприклад, у MySQL є тип даних TINYINT, який займає один байт і прекрасно підходить для зберігання віку, отже, в стовпець з типом TINYINT можна записувати цілі числа від 0 до 256 (два у восьмому ступені, в одному байті 8 біт, а один біт може приймати два значення: нуль або одиницю), якщо стовпець без знаковий, якщо стовпець знаковий, то в нього можна записати числа від -128 до 127 (один біт піде на знак).