Aller au contenu

Aide-mémoire — Types#

courant

Types de stockage SQLite#

Type de stockage Description
NULL Valeur nulle
INTEGER Entier signé, 1 à 8 octets
REAL Flottant 8 octets (IEEE)
TEXT Chaîne (UTF-8/16)
BLOB Données binaires brutes

Affinités de colonnes#

Affinité Déclarations types associées (exemples)
TEXT CHARACTER, VARCHAR, TEXT, CLOB
NUMERIC DECIMAL, BOOLEAN, DATE, DATETIME
INTEGER INT, INTEGER, BIGINT, TINYINT
REAL REAL, FLOAT, DOUBLE
BLOB pas de type déclaré, ou BLOB

Règles de détermination d'affinité avancé#

  1. Contient INT → INTEGER
  2. Contient CHAR, CLOB, TEXT → TEXT
  3. Contient BLOB ou vide → BLOB
  4. Contient REAL, FLOA, DOUB → REAL
  5. Sinon → NUMERIC

SQLite

Le type déclaré est indicatif. SQLite est à typage dynamique : une colonne INTEGER peut stocker du texte (sauf tables STRICT).

Tables STRICT (SQLite ≥ 3.37) avancé#

CREATE TABLE t (
  id INTEGER PRIMARY KEY,
  nom TEXT NOT NULL
) STRICT;

Types autorisés en mode STRICT : INT, INTEGER, REAL, TEXT, BLOB, ANY.

Booléens#

Pas de type BOOLEAN natif → stocké comme INTEGER (0/1).

Dates#

Pas de type DATE natif → stocké comme TEXT (ISO8601), REAL (jour julien) ou INTEGER (Unix time).