replaceOne

MongoDB 🟡 Mid

Définition

Remplace entièrement un document par un nouveau, en conservant le même _id. Contrairement a updateOne, ne prend pas d'opérateurs mais un document complet.

Analogie

Jeter l'ancienne fiche et en écrire une toute nouvelle avec le même numéro de dossier.

Exemple de code

await db.collection('users').replaceOne(
  { _id: userId },
  { name: 'Bob', age: 31, role: 'admin' }
);

Cas d'usage

Quand un document est entièrement recalcule et doit être remplace en bloc.

Anti-pattern

Utiliser replaceOne pour modifier un seul champ, perdant tous les autres champs du document.

Termes liés

#sgbd#interview#database#mongodb

En entretien

  1. Quelle différence entre replaceOne et updateOne ?

    replaceOne remplace entièrement un document par un nouveau en conservant le même _id, sans prendre d'opérateurs, contrairement à updateOne qui modifie des champs précis. C'est à utiliser quand un document est entièrement recalculé et doit être remplacé en bloc.

  2. Quel piège vois-tu si on utilise replaceOne pour modifier un seul champ ?

    On perd tous les autres champs du document, puisque replaceOne remplace l'intégralité du document par celui fourni. C'est justement l'anti-pattern à éviter : dans ce cas, updateOne est le bon choix.

Fiche mise à jour le 2026-09-27

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