node:sqlite
JavaScript 🟡 MidDéfinition
Module SQLite intégré à Node.js, ajouté en 22.5.0, sorti du drapeau --expérimental-sqlite en 23.4.0 et 22.13.0, et passé « release candidate » (stabilité 1.2) en 25.7.0. API synchrone : DatabaseSync, prépare(), run/get/all/iterate, plus un SQLTagStore qui met en cache des requêtes écrites en template literal. Bun 1.4 annonce 100 % de compatibilité avec ce module.
Analogie
Un carnet de comptes rangé dans le tiroir du bureau : pas besoin d'aller à la banque pour une addition.
Exemple de code
import { DatabaseSync } from 'node:sqlite';
const db = new DatabaseSync('app.db'); // ou ':memory:'
db.exec('CREATE TABLE IF NOT EXISTS todo(id INTEGER PRIMARY KEY, txt TEXT) STRICT');
const ins = db.prepare('INSERT INTO todo (txt) VALUES (?)');
ins.run('acheter du pain');
const tous = db.prepare('SELECT * FROM todo').all();
console.log(tous); // [{ id: 1, txt: 'acheter du pain' }]
db.close();
Cas d'usage
CLI, prototypes, caches locaux, tests : une base relationnelle sans dépendance native ni serveur.
Anti-pattern
Utiliser l'API synchrone au cœur d'un serveur HTTP très sollicité : chaque requête bloque la boucle d'événements.
Termes liés
Fiche mise à jour le 2026-09-27