SQLite Типы данных с примером: Int, Text, Numeric, Real, Blob

Типы данных в SQLite отличаются от других систем управления базами данных. В SQLite, вы можете объявлять типы данных обычным образом, но при этом сохранять любое значение в любом типе данных.

SQLite набирается меньше. Типов данных нет, вы можете хранить любые типы данных в любом столбце. Это называется динамическими типами.

В статических типах, как и в других системах управления базами данных, если вы объявили столбец с целочисленным типом данных, вы можете вставлять только значения целочисленного типа данных. Однако в динамических типах, таких как SQLite, тип столбца определяется вставленным значением. А потом SQLite сохраняет это значение в зависимости от его типа.

SQLite Классы хранения

In SQLite существуют разные методы хранения в зависимости от типа значения, эти разные методы хранения называются классами хранения в SQLite.

Ниже приведены классы хранения, доступные в SQLite:

  • NULL, – этот класс хранения используется для хранения любого значения NULL.
  • ЦЕЛОЕ – любое числовое значение сохраняется как целое число со знаком (оно может содержать как положительные, так и отрицательные целочисленные значения). ЦЕЛЫЕ значения в SQLite хранятся в 1, 2, 3, 4, 6 или 8 байтах памяти в зависимости от значения числа.
  • РЕАЛ – этот класс хранения используется для хранения значений с плавающей запятой, и они хранятся в 8-байтовом хранилище.
  • ТЕКСТ – хранит текстовые строки. Он также поддерживает различные кодировки, такие как UTF-8, UTF-16 BE или UTF-26LE.
  • Большой двоичный объект – используется для хранения больших файлов, таких как изображения или текстовые файлы. Значение сохраняется в виде массива байтов так же, как и входное значение.

SQLite Тип родства

Сходство типов — это рекомендуемый тип данных, хранящихся в столбце. Однако вы по-прежнему можете хранить любые типы данных по своему усмотрению, эти типы не рекомендуется использовать.

Эти типы были введены в SQLite чтобы максимизировать совместимость между SQLite и другие система управления базами данных.

Любой столбец, объявленный в SQLite базе данных присваивается сходство типов в зависимости от объявленного типа данных. Здесь подъем сходства типов в SQLite:

  • ТЕКСТ.
  • ЦИФРОВОЙ.
  • ЦЕЛОЕ.
  • НАСТОЯЩИЙ.
  • БЛОБ.

Вот как SQLite определяет сходство столбца по его объявленному типу данных:

  1. Сходство INTEGER назначается, если объявленный тип содержит string INT».
  2. Привязка TEXT назначается, если столбец содержит в своем типе данных одну из следующих строк:ТЕКСТ»,«CHAR, или "КЛОБ«. Например, типу VARCHAR будет присвоено соответствие ТЕКСТ.
  3. Привязка BLOB назначается, если для столбца не указан тип или тип данных — BLOB.
  4. НАСТОЯЩЕЕ сходство назначается, если тип содержит одну из следующих строк «ДУБ»,«РЕАЛ, или "FLOAT».
  5. NUMERIC сходство назначается для любого другого типа данных.

На той же странице имеется таблица, показывающая некоторые примеры сопоставления между SQLite типы данных и их сходство определяются этими правилами:

SQLite Тип родства
Сопоставление между SQLite типы данных и сходство

Примеры хранения типов данных в SQLite

Сохранение номера с SQLite целое

Любой столбец типа данных содержит слово «INT», ему будет присвоено соответствие типа INTEGER. Он будет храниться в классе хранения INTEGER.

Все следующие типы данных назначаются как сходство типа INTEGER:

  • ЦЕЛОЕ, ЦЕЛОЕ, БОЛЬШОЕ.
  • ИНТ2, ИНТ4, ИНТ8.
  • TINYINT, SMALLINT, MEDIUM INT.

Сходство типов INTEGER в SQLite может содержать любое присвоенное целое число (положительное или отрицательное) от 1 до 8 байт.

Сохранение номеров с помощью SQLite РЕАЛ

Числа REAL — это числа с двойной точностью с плавающей запятой. SQLite хранил действительные числа в виде массива размером 8 байт. Вот список типов данных в SQLite который вы можете использовать для хранения РЕАЛЬНЫХ чисел:

  • НАСТОЯЩИЙ.
  • ДВОЙНОЙ.
  • ДВОЙНАЯ ТОЧНОСТЬ.
  • ПЛАВАТЬ.

Хранение больших данных с помощью SQLite Большой двоичный объект

Есть только один способ хранить большие файлы в SQLite базу данных и использует тип данных BLOB. Этот тип данных используется для хранения больших файлов, таких как изображения, файлы (любого типа) и т. д. Файл преобразуется в массив байтов, а затем сохраняется в том же размере, что и входной файл.

Хранение SQLite Булевы

SQLite не имеет отдельного класса хранения BOOLEAN. Однако значения BOOLEAN сохраняются как ЦЕЛЫЕ ЧИСЛА со значениями 0 (как ложь) или 1 (как истина).

Хранение SQLite даты и время

Вы можете объявить дату или дату в SQLite используя один из следующих типов данных:

  • ДАТА
  • ДАТА ВРЕМЯ
  • ВРЕМЯ
  • ВРЕМЯ

Обратите внимание, что в файле нет отдельного класса хранения DATE или DATETIME. SQLite. Вместо этого любые значения, объявленные с одним из предыдущих типов данных, сохраняются в классе хранения в зависимости от формата даты вставленного значения следующим образом:

  • ТЕКСТ – если вы вставили значение даты в формате строки ISO8601 («ГГГГ-ММ-ДД ЧЧ:ММ:СС.ССС»).
  • РЕАЛ – если вы вставили значение даты в число дней по юлианскому календарю, количество дней с полудня в Гринвиче 24 ноября 4714 г. до н.э. Тогда значение даты будет сохранено как РЕАЛЬНОЕ.
  • ЦЕЛОЕ as Юникс Время, количество секунд с 1970-01-01 00:00:00 UTC.

Резюме

SQLite поддерживает широкий спектр типов данных. Но в то же время он очень гибок в отношении типов данных. Вы можете поместить любой тип значения в любой тип данных. SQLite также представил некоторые новые концепции типов данных, такие как сходство типов и классы хранения, в отличие от других систем управления базами данных.