Retour aux FAQ Bases de données
CENTRE D’AIDE · FAQBases de données2 min de lecture

Pourquoi une mise à jour sans filtre est-elle bloquée ?

IaGenify bloque une mise à jour ou une suppression sans filtre ni clause SQL WHERE, sauf si vous confirmez explicitement que tous les enregistrements doivent être concernés. Cette protection évite qu’une condition manquante modifie toute une collection ou table par inadvertance.

Bases de données

Fonctionnement du contrôle

Dans MongoDB, un filtre vide peut correspondre à tous les documents d’une collection. En SQL, une instruction UPDATE ou DELETE sans WHERE peut modifier ou supprimer toutes les lignes de la table visée. L’outil de stockage détecte ces opérations sans limite et exige la confirmation explicite `all: true` avant de continuer.

Ce contrôle ne décide pas si une modification globale est souhaitable ; il rend simplement sa portée explicite. Une méthode plus sûre consiste à lire d’abord les enregistrements visés, à créer un filtre avec une clé stable et à examiner les résultats avant l’écriture. En SQL, utilisez une clause WHERE qui désigne les lignes précises à modifier.

Utiliser la confirmation globale avec prudence

Si vous souhaitez réellement modifier ou supprimer tous les enregistrements, `all: true` confirme cette portée pour l’opération. Utilisez-le seulement lorsque la demande prévoit clairement un changement global et que ses conséquences ont été examinées. Il n’ajoute aucune fonction d’annulation ; gardez une sauvegarde si une restauration est importante.

Si vous attendiez une modification ciblée, n’ajoutez pas cette confirmation pour faire disparaître l’erreur. Corrigez le filtre, vérifiez le stockage et la table ou collection, puis examinez les résultats correspondants avant l’écriture. L’erreur vous invite ainsi à préciser la portée voulue.

Retour aux FAQ Bases de données