MongoDB UpdateMany

MongoDB UpdateMany

MongoDB est un système de gestion de la base de données open source qui permet à ses utilisateurs d'ajouter des téléchargements et de les connecter facilement avec le serveur. Comme son nom l'indique, comme d'autres bases de données, elle stockera des données et permettra aux utilisateurs de les gérer. À cette fin, il a plusieurs fonctions (i.e. UpdateMany ()). UpdateMany () est la fonction de ligne de commande utilisée pour modifier les documents de la collection de MongoDB en fonction de la requête que nous avons utilisée. La modification est toujours liée au remplacement des données existantes ou à l'ajout d'un nouveau champ dans l'enregistrement. Notre sujet actuel fait référence à la fonction UpdateMany () dans MongoDB. Commençons par l'implémentation pour voir comment cette commande est relatable à chaque scénario.

Lorsque vous ouvrez le terminal, vous êtes maintenant censé écrire une commande concernant MongoDB. Si vous n'êtes pas sûr de la base de données avec laquelle vous êtes connecté, écrivez simplement 'DB'. Cela apportera le nom de la base de données.

>> db

La base de données sera la base de données par défaut ou définie par l'utilisateur. Si vous n'avez pas créé une base de données de votre propre, alors MongoDB utilisera la base de données par défaut, «Test». Mais pour utiliser la base de données de votre propre, vous devez utiliser une commande «Utiliser» avec le nom de la base de données.

>> Utiliser la démo.

Par conséquent, la démo est la base de données définie par l'utilisateur. MongoDB Terminal répondra à laquelle la base de données est passée du test à la base de données de démonstration.

Création de collection

Une fois que vous aurez terminé avec la connectivité de la base de données et la création, votre préoccupation s'appuiera sur la saisie des données. Semblable à d'autres bases de données, MongoDB propose également des conteneurs pour stocker des données. Ce sont des collections. Voyons comment les collections sont formées en utilisant le nom «test».

>> db.CreateCollection («test»)

Le création La commande avec le mot-clé DB est utilisée pour créer une collection avec le nom de parenthèses. Assurez-vous que la collection est créée dans la même base de données que vous souhaitez utiliser à l'avenir. Parce que lors de la création d'une collection, le nom de la base de données n'est pas spécifié.

La réponse de MongoDB est «OK», ce qui signifie que la collection est créée avec succès sans aucune exception. Nous avions déjà ajouté des données à la collecte. Trois attributs sont ajoutés et attribués avec les valeurs respectivement. Pour voir toutes les données, utilisez la commande find ().

>> db.test.trouver().joli()

Cette commande va chercher tous les enregistrements de la collection de tests.

Vous pouvez observer que 4 lignes sont entrées dans la collection.

UpdateMany ()

Parfois, vous avez entré les mauvaises données, ou vous devez ajouter plus de champs à l'enregistrement. En d'autres termes, vous avez besoin de modification des données. Donc, cela se fait via la commande de mise à jour.

MongoDB fournit une installation pour mettre à jour les documents existants. Il existe deux types pour mettre à jour les documents.

  • db.collection.updateOne () - Il met à jour un seul attribut dans une collection.
  • db.collection.UpdateMany () - Il est utilisé pour mettre à jour de nombreux attributs via une seule commande, dans la collection.

Note: Les deux types de mise à jour sont utiles, mais les développeurs sont recommandés par les développeurs d'utiliser UpdateManny () car il consomme moins de temps et rend le code plus court.

Comme notre sujet en discussion est UpdateMany, nous irons donc avec lui en décrivant la syntaxe.

# db.collection_name.UpdateMany (filtre, nom de l'attribut / document, options)

Ici, DB désigne la base de données actuelle et Collection_name est la collection sur laquelle vous souhaitez appliquer la commande de mise à jour. Il y a principalement trois arguments en fonction du paramètre UpdateMany.

  • Filtre: Il agit de la même manière que la méthode find (). Il montre les critères de sélection de la mise à jour.
  • Document: Il contient la valeur que vous souhaitez ajouter dans la ligne ou celle qui peut être utilisée pour le remplacement.
  • Options: C'est une valeur facultative qui peut être supprimée.

Comme nous avons déjà créé une collection et ajouté des exemples de données, appliquons la commande UpdateMany sur la collection.

Exemple 1: Mettez à jour un enregistrement existant

Cet exemple fait référence à la modification d'une valeur déjà existante. Par exemple, la partie filtrante de la commande trouvera l'attribut de nom. Lorsque le match est trouvé, la valeur de la fonction d'âge est remplacée.

>> db.test.UpdateMany (name: "David", $ set: Âge: 20)

En réponse à la commande, MongoDB reconnaîtra la requête comme vraie et montrera qu'un match a été trouvé dans l'ensemble. Ensuite, la ligne concernée est modifiée.

Pour voir l'enregistrement, nous utiliserons la commande find ()

>> db.test.trouver().joli()

En conséquence, vous remarquerez que l'âge de David avait 26 ans lorsque le dossier a été inscrit, mais en appliquant la fonction UpdateMany (), la fonction d'âge est remplacée par 20.

Exemple 2: Ajoutez un nouvel attribut à l'enregistrement existant

Nous allons maintenant mettre à jour un seul champ dans le dossier de plus d'une personne. Auparavant, nous avons utilisé un nom qui est un attribut unique. Il ne spécifie qu'une seule personne. Pour cibler davantage, nous avons sélectionné un attribut de section. Cette fois, nous ne modifierons pas l'enregistrement existant, mais le nouveau sera ajouté. L'attribut est «équipe» avec une valeur. Cela ne sera ajouté que dans les lignes qui ont la section A.

>> db.test.UpdateMany (section: "A", $ set: Team: "Fruit")

La commande renverra que 2 lignes sont modifiées après avoir trouvé le match. En utilisant la fonction find (), vous obtiendrez:

Exemple 3: modifiez tous les enregistrements

Si vous souhaitez ajouter un nouveau champ dans chaque ligne, nous n'utilisons aucun attribut dans le filtre de la commande mais les supports vides sont mentionnés.

>> db.test.UpdateMany (, $ set: éligibilité: "true")

Ainsi, le nouvel attribut d'éligibilité sera ajouté dans toutes les lignes.

Conclusion

Cette discussion devait fournir l'utilisation de la commande UpdateMany () dans la base de données MongoDB. Nous avons donné une brève introduction à la base de données, aux collections et à l'insertion de données car ce sont les conditions préalables à l'application de la commande UpdateMany (). La commande de mise à jour peut être utilisée en outre dans deux sous-champs; UpdateOne () et UpdateMany (). UpdateMany est utilisé en détail en utilisant quelques exemples qui aident à apprendre et à comprendre ce concept.