node:sqlite

JavaScript 🟡 Mid

Dé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.
#tooling#node22#node25#donnees

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre