TW3 — Technologies du Web 3

Suppression de données dans MongoDB

Supprimer un ou plusieurs documents avec deleteOne et deleteMany, sans utiliser les anciennes API obsolètes.

🍃 Méthodes de suppression

  1. deleteOne() supprime le premier document qui correspond au filtre.

    db.utilisateurs.deleteOne({ email: "alice@example.com" })
  2. deleteMany() supprime tous les documents qui correspondent au filtre.

    db.utilisateurs.deleteMany({ ville: "Albi" })

🍃 Suppression sélective

  1. Supprimer un champ d'un document avec $unset si vous ne voulez pas supprimer le document entier.

    db.utilisateurs.updateOne(
      { email: "bob@example.com" },
      { $unset: { ville: "" } }
    )
  2. Supprimer plusieurs documents selon un critère métier.

    db.utilisateurs.deleteMany({ age: { $gt: 30 } })

🧪 Bonnes pratiques et astuces

  1. Testez d'abord le filtre avec find() avant d'exécuter une suppression massive.

    db.utilisateurs.find({ ville: "Albi" })
  2. Ajoutez un writeConcern si vous avez besoin d'une confirmation forte côté base.

    db.utilisateurs.deleteMany(
      { age: { $lt: 18 } },
      { writeConcern: { w: "majority" } }
    )
  3. Ne supprimez jamais sans filtre par accident. Une commande comme deleteMany({}) vide toute la collection.

    db.utilisateurs.deleteMany({})

MongoDB

Terminez le quiz du chapitre pour le marquer comme complété.

Tableau de bord

On this page