English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tipos de Dados do SQLite

O tipo de dados do SQLite é uma propriedade usada para especificar o tipo de dados de qualquer objeto. Cada coluna, variável e expressão no SQLite possui um tipo de dados correspondente.

Você usará esses tipos de dados ao criar tabelas. O SQLite usa um sistema de tipos dinâmicos mais genérico. No SQLite, o tipo de dados do valor está associado ao valor em si, não ao seu contêiner.

Classes de armazenamento do SQLite

Cada valor armazenado no banco de dados SQLite possui uma das seguintes classes de armazenamento-

NúmeroClasses de armazenamento e descrição
1

NULL

Este valor é um valor NULL.

2

INTEGER

Este valor é um inteiro assinado, armazenado na1、2、3、4、6ou8bytes.

3

REAL

Este valor é um valor flutuante, armazenado como8número flutuante IEEE em bytes.

4

TEXT

Este valor é uma string de texto, usada no código de caracteres do banco de dados (UTF-8, UTF-16BE ou UTF-16armazenamento LE)

5

BLOB

Este valor é uma gota de dados, armazenada completamente conforme a entrada.

A classe de armazenamento do SQLite é mais genérica do que os tipos de dados. Por exemplo, a classe de armazenamento INTEGER inclui6Tipos de dados inteiros de diferentes comprimentos.

Tipos de associação do SQLite

SQLite suporta o conceito de semelhança de tipo em colunas. Qualquer coluna ainda pode armazenar qualquer tipo de dados, mas a classe de armazenamento preferida da coluna é chamada de afinidade. SQLite3Cada coluna de tabela em um banco de dados tem uma das seguintes associações de tipos-

NúmeroAfinidade e descrição
1

TEXT

A coluna usa a classe de armazenamento NULL, TEXT ou BLOB para armazenar todos os dados.

2

NUMÉRICO

A coluna pode conter valores de todas as cinco classes de armazenamento.

3

INTEGER

Comportamento idêntico ao de colunas com afinidade NUMÉRICO, exceto pela expressão CAST.

4

REAL

Comportamento semelhante ao de colunas com afinidade NUMÉRICO, exceto pelo expressão CAST.

5

NENHUM

As colunas com afinidade NONE não preferem uma classe de armazenamento em vez de outra e não tentam converter dados de uma classe de armazenamento para outra.

SQLite e nomes de tipos de relacionamento

A tabela a seguir lista os nomes dos vários tipos de dados, que podem ser usados em SQLite3ao criar uma tabela.

tipo de dadosafinidade
  • INT

  • INTEGER

  • TINYINT

  • SMALLINT

  • MEDIUMINT

  • BIGINT

  • UNSIGNED BIG INT

  • INT2

  • INT8

INTEGER
  • CARACTERE(20)

  • VARCHAR(255)

  • VARYING CHARACTER(255)

  • NCHAR(55)

  • NATIVE CHARACTER(70)

  • NVARCHAR(100)

  • TEXT

  • CLOB

TEXT
  • BLOB

  • Tipo de dados não especificado

NENHUM
  • REAL

  • DOUBLE

  • DOUBLE PRECISION

  • FLOAT

REAL
  • NUMÉRICO

  • DECIMAL(10,5)

  • BOOLEAN

  • DATA

  • DATETIME

NUMÉRICO

tipo de dados booleano

SQLite não possui uma classe de armazenamento booleana separada. Em vez disso, armazena valores booleanos como inteiros 0(false) e1(true).

dados de data e hora

SQLite não possui um tipo de dados específico para armazenar datas e/ou a classe de armazenamento separada para datas e horários, mas o SQLite pode armazenar datas e horários como valores TEXT, REAL ou INTEGER.

NúmeroClasse de Armazenamento e Formato de Data
1

TEXT

O formato da data é "YYYY-MM-DD HH:MM:SS.SSS

2

REAL

A.C.4714Ano11Mês24Número de dias desde o meio-dia de Greenwich no dia.

3

INTEGER

Desde1970-01-01 Segundos desde 00:00:00 UTC

Você pode escolher armazenar datas e horários nestes formatos e usar funções de data e hora integradas para converter livremente entre eles.