SQLite Типы данных: Int, Text, Numeric, Real, Blob
⚡ Умное резюме
SQLite Типы данных работают иначе, чем другие базы данных, потому что SQLite использует динамический типping, сохраняя любое значение в любом столбце. Классы хранения, привязка типов и объявленные имена типов вместе определяют, как каждое значение физически сохраняется на диске.

В разделах ниже объясняется, как SQLite Включает в себя работу с типами данных, начиная с пяти классов хранения, затем рассматривается привязка типов и правила их присвоения, и, наконец, приводятся примеры хранения целых чисел, действительных чисел, BLOB-объектов, логических значений и дат.
Типы данных в SQLite отличаются от тех, что используются в других системах управления базами данных. SQLiteВы можете объявлять типы данных обычным способом, но при этом можете хранить любое значение в любом типе данных.
SQLite Это бестиповая архитектура. В ней нет фиксированных типов данных; вы можете хранить любые типы данных в любом столбце. Это называется динамической архитектурой.ping.
В статических типах, как и в других системах управления базами данных, если вы объявляете столбец с типом данных integer, вы можете вставлять только значения типа integer. Однако в динамических типах, как, например, в SQLiteТип столбца определяется вставленным значением, а затем SQLite сохраняет это значение в зависимости от его типа.
SQLite Классы хранения
In SQLite В зависимости от типа значения существуют различные методы хранения; эти различные методы хранения называются классами хранения. SQLite.
Ниже приведены классы хранения, доступные в SQLite:
- NULL, – этот класс хранения используется для хранения любого значения NULL.
- ЦЕЛОЕ – любое числовое значение хранится как знаковое целое число (оно может содержать как положительные, так и отрицательные целые числа). Целочисленные значения в SQLite хранятся в 1, 2, 3, 4, 6 или 8 байтах памяти в зависимости от значения числа.
- РЕАЛ – Этот класс хранения используется для хранения значений с плавающей запятой, и они хранятся в 8 байтах памяти.
- ТЕКСТ – хранит текстовые строки. Он также поддерживает различные кодировки, такие как UTF-8, UTF-16BE или UTF-16LE.
- Большой двоичный объект – используется для хранения больших файлов, таких как изображения или текстовые файлы. Значение хранится в виде массива байтов, аналогичного входному значению.
SQLite Тип родства
Рекомендуемый тип данных для хранения в столбце — это тип данных, соответствующий типу данных. Однако вы можете хранить данные любого типа по своему усмотрению; эти типы данных рекомендуются, но не являются обязательными.
Эти типы были введены в SQLite чтобы максимизировать совместимость между SQLite и другие система управления базами данныхs.
Любой столбец, объявленный в SQLite Базе данных присваивается тип соответствия в зависимости от объявленного типа данных. Вот список типов соответствия в базе данных. SQLite:
- ТЕКСТ.
- ЦИФРОВОЙ.
- ЦЕЛОЕ.
- НАСТОЯЩИЙ.
- БЛОБ.
Вот как SQLite Определяет соответствие столбца его заявленному типу данных:
- Сходство INTEGER назначается, если объявленный тип содержит string «ИНТ».
- Тип данных TEXT присваивается, если столбец содержит в своем типе данных одну из следующих строк: “TEXT”, “CHAR” или “CLOB”. Например, типу VARCHAR будет присвоен тип данных TEXT.
- Привязка BLOB назначается, если для столбца не указан тип или тип данных — BLOB.
- Типу присваивается значение REAL, если он содержит одну из следующих строк: “DOUB”, “REAL” или “FLOAT”.
- NUMERIC сходство назначается для любого другого типа данных.
Ниже также приведена таблица с примерами карты.ping между SQLite типы данных и их сходство определяются этими правилами:
Примеры хранения типов данных в SQLite
Сохранение номеров с помощью SQLite ЦЕЛОЕ
Если какой-либо столбец содержит тип данных, включающий слово «INT», ему будет присвоен тип INTEGER. Он будет храниться в классе хранения INTEGER.
Всем следующим типам данных присваивается тип INTEGER:
- ЦЕЛОЕ, ЦЕЛОЕ, БОЛЬШОЕ.
- ИНТ2, ИНТ4, ИНТ8.
- TINYINT, SMALLINT, MEDIUMINT.
Сходство типов INTEGER в SQLite Может хранить любое присвоенное целое число (положительное или отрицательное) размером от 1 байта до максимум 8 байтов.
Сохранение номеров с помощью SQLite РЕАЛ
Действительные числа — это числа с двойной точностью с плавающей запятой. SQLite хранит действительные числа в виде 8-байтового массива. Вот список типов данных в SQLite который вы можете использовать для хранения РЕАЛЬНЫХ чисел:
- НАСТОЯЩИЙ.
- ДВОЙНОЙ.
- ДВОЙНАЯ ТОЧНОСТЬ.
- ПЛАВАТЬ.
Хранение больших данных с помощью SQLite Большой двоичный объект
Существует только один способ хранения больших файлов в SQLite В базе данных используется тип данных BLOB. Этот тип данных используется для хранения больших файлов, таких как изображения или файлы любого типа. Файл преобразуется в массив байтов, а затем сохраняется в том же размере, что и входной файл.
Хранение SQLite Булевы
SQLite В данном случае отсутствует отдельный класс хранения логических значений (BOOLEAN). Вместо этого логические значения хранятся как целые числа (INTEGER), где 0 означает ложь, а 1 — истину.
Хранение SQLite даты и время
Вы можете указывать даты или время в SQLite используя один из следующих типов данных:
- ДАТА
- ДАТА ВРЕМЯ
- ВРЕМЯ
- ВРЕМЯ
Обратите внимание, что в системе нет отдельных классов хранения DATE или DATETIME. SQLiteВместо этого любые значения, объявленные с использованием одного из указанных выше типов данных, хранятся в классе хранения, зависящем от формата даты вставляемого значения, следующим образом:
- ТЕКСТ – если вы вставляете значение даты в формате строки ISO8601 («YYYY-MM-DD HH:MM:SS.SSS»).
- РЕАЛ – Если ввести значение даты в виде номера юлианского дня, то количество дней, прошедших с полудня в Гринвиче 24 ноября 4714 года до н.э., будет сохранено как число в формате REAL.
- ЦЕЛОЕ - в виде Юникс Время, количество секунд с 1970-01-01 00:00:00 UTC.

