Учебники

SQLite — Тип данных

Тип данных SQLite — это атрибут, который определяет тип данных любого объекта. Каждый столбец, переменная и выражение имеют связанный тип данных в SQLite.

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

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

Каждое значение, хранящееся в базе данных SQLite, имеет один из следующих классов хранения:

Sr.No. Класс хранения и описание
1

НОЛЬ

Значение является значением NULL.

2

INTEGER

Значение представляет собой целое число со знаком, сохраняемое в 1, 2, 3, 4, 6 или 8 байтах в зависимости от величины значения.

3

РЕАЛЬНЫЙ

Значение является значением с плавающей запятой, хранящимся как 8-байтовое число с плавающей запятой IEEE.

4

ТЕКСТ

Значение представляет собой текстовую строку, сохраненную с использованием кодировки базы данных (UTF-8, UTF-16BE или UTF-16LE)

5

большой двоичный объект

Значение представляет собой блок данных, хранящийся в точности так, как он был введен.

НОЛЬ

Значение является значением NULL.

INTEGER

Значение представляет собой целое число со знаком, сохраняемое в 1, 2, 3, 4, 6 или 8 байтах в зависимости от величины значения.

РЕАЛЬНЫЙ

Значение является значением с плавающей запятой, хранящимся как 8-байтовое число с плавающей запятой IEEE.

ТЕКСТ

Значение представляет собой текстовую строку, сохраненную с использованием кодировки базы данных (UTF-8, UTF-16BE или UTF-16LE)

большой двоичный объект

Значение представляет собой блок данных, хранящийся в точности так, как он был введен.

Класс хранения SQLite немного более общий, чем тип данных. Например, класс хранения INTEGER включает в себя 6 различных типов целочисленных типов данных различной длины.

Тип близости SQLite

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

Sr.No. Сходство и описание
1

ТЕКСТ

В этом столбце хранятся все данные с использованием классов хранения NULL, TEXT или BLOB.

2

NUMERIC

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

3

INTEGER

Ведет себя так же, как столбец со сходством NUMERIC, за исключением выражения CAST.

4

РЕАЛЬНЫЙ

Ведет себя как столбец с NUMERIC сходством, за исключением того, что он приводит целочисленные значения к представлению с плавающей запятой.

5

НИКТО

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

ТЕКСТ

В этом столбце хранятся все данные с использованием классов хранения NULL, TEXT или BLOB.

NUMERIC

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

INTEGER

Ведет себя так же, как столбец со сходством NUMERIC, за исключением выражения CAST.

РЕАЛЬНЫЙ

Ведет себя как столбец с NUMERIC сходством, за исключением того, что он приводит целочисленные значения к представлению с плавающей запятой.

НИКТО

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

Сходство SQLite и имена типов

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

Тип данных близость
  • INT
  • INTEGER
  • TINYINT
  • SMALLINT
  • MEDIUMINT
  • BIGINT
  • НЕ ПОДПИСАНО БОЛЬШОЙ ИНТ
  • INT2
  • INT8
INTEGER
  • СИМВОЛЫ (20)
  • УАКСНАК (255)
  • ИЗМЕНЯЮЩИЙ ХАРАКТЕР (255)
  • NCHAR (55)
  • РОДНОЙ ХАРАКТЕР (70)
  • NVARCHAR (100)
  • ТЕКСТ
  • CLOB
ТЕКСТ
  • большой двоичный объект
  • тип данных не указан
НИКТО
  • РЕАЛЬНЫЙ
  • DOUBLE
  • ДВОЙНАЯ ТОЧНОСТЬ
  • FLOAT
РЕАЛЬНЫЙ
  • NUMERIC
  • ДЕСЯТИЧНАЯ (10,5)
  • БУЛЕВЫ
  • ДАТА
  • DATETIME
NUMERIC

Логический тип данных

SQLite не имеет отдельного булева класса хранения. Вместо этого логические значения сохраняются как целые числа 0 (ложь) и 1 (истина).

Дата и время Тип данных

SQLite не имеет отдельного класса хранения для хранения дат и / или времени, но SQLite способен хранить даты и время в виде значений TEXT, REAL или INTEGER.

Sr.No. Класс хранения и формат даты
1

ТЕКСТ

Дата в формате «ГГГГ-ММ-ДД ЧЧ: ММ: СС.ССС»

2

РЕАЛЬНЫЙ

Количество дней с полудня в Гринвиче 24 ноября 4714 г. до н.э.

3

INTEGER

Количество секунд с 1970-01-01 00:00:00 UTC

ТЕКСТ

Дата в формате «ГГГГ-ММ-ДД ЧЧ: ММ: СС.ССС»

РЕАЛЬНЫЙ

Количество дней с полудня в Гринвиче 24 ноября 4714 г. до н.э.

INTEGER

Количество секунд с 1970-01-01 00:00:00 UTC

Вы можете хранить даты и время в любом из этих форматов и свободно конвертировать между форматами, используя встроенные функции даты и времени.