Aide-mémoire — Spécificités SQLite#
courant
Ce qui n'existe pas#
- Pas de gestion des droits (
GRANT/REVOKE), pas d'utilisateurs - Pas de type
ENUM - Pas de procédures stockées
- Pas de
FULL OUTER JOIN/RIGHT JOINavant la version 3.39 (2022)
Ce qui est spécifique#
| Fonctionnalité | Détail |
|---|---|
| Typage | Dynamique — affinité de colonne, pas de typage strict (sauf tables STRICT, ≥ 3.37) |
ROWID |
Clé primaire implicite (alias _rowid_, oid) sauf tables WITHOUT ROWID |
AUTOINCREMENT |
Déconseillé sauf besoin strict (ralentit ; INTEGER PRIMARY KEY seul suffit en général) |
PRAGMA |
Remplace beaucoup de commandes serveur (config, introspection) |
| Fichier unique | Toute la base = 1 fichier .db |
ATTACH DATABASE |
Fusionner plusieurs fichiers SQLite dans une session |
| Extensions | JSON1, FTS5, R-Tree intégrées (selon compilation) |
Tables STRICT |
CREATE TABLE t (...) STRICT; impose les types déclarés (≥ 3.37) |
Fonctions système utiles#
Limites#
- Taille max base : 281 To (théorique)
VARCHAR(n):nignoré (affinité TEXT quel que soit n)- Nombre de bases attachées : 10 par défaut (jusqu'à 125)