DBAtlas · Atlas d'exploitation des bases de données

28 PathNotViable: Cannot use the part of the path to traverse the element (impossible d'utiliser cette partie du chemin pour parcourir l'élément)

MongoDB

Que signifie cette erreur ?

Une mise à jour a tenté de parcourir un chemin de champ pointé (par ex. a.b.c), mais une partie du chemin a rencontré un type qui ne peut pas contenir de sous-champs (valeur scalaire ou élément de mauvais type). Le chemin n'a donc pas pu être parcouru.

Cause

Écriture dans un chemin imbriqué comme a.b.c alors que le champ 'a' du document est un scalaire (par ex. nombre/chaîne) et non un objet/tableau ; ou incohérences de type comme un objet trouvé là où un index de tableau est attendu. Fréquent dans les documents au schéma incohérent (lors de la mise à jour de chemins profonds avec $set).

Comment la corriger

Avant la mise à jour, assurez-vous que le chemin est du type attendu (objet/tableau). Corrigez les documents incompatibles ou rendez la mise à jour conditionnelle à la structure du document. Si nécessaire, convertissez d'abord le champ dans le bon type (par ex. remplacez la valeur scalaire par un objet), puis écrivez le champ imbriqué. Envisagez la validation de schéma pour la cohérence du schéma.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur