Dans cet article, nous allons apprendre ce qu’est MongoDB, comment se connecter à la base de données MongoDB et effectuer Insert, Read, Update, Delete dans MongoDB en utilisant PyMongo avec et Python.

Qu’est-ce que MongoDB ?

MongoDB est une société qui gère une base de données appelée MongoDB. Il s’agit d’une base de données de documents open source qui vous permet de stocker facilement des données à grande échelle et vous pouvez travailler avec vos données très efficacement. MongoDB est une base de données NoSQL, ce qui signifie qu’il ne s’agit pas seulement d’une base de données séquentielle, il peut faire bien plus que cela.

Pourquoi devriez-vous utiliser MongoDB ?

Sur Internet, il existe de nombreuses autres bases de données comme MongoDB ex. MySQL, JaguarDB, PostgreSQL, IBM Cloudant et bien d’autres, mais pourquoi nous utilisons MongoDB, voyons :

  • MongoDB est une base de données qui stocke les données sous une forme flexible (document de type JSON).
  • Le modèle de document de type JSON facilite le mappage du code d’application objet, prend en charge les tableaux et permet des schémas flexibles et dynamiques.
  • Les schémas dynamiques signifient que vous pouvez stocker vos enregistrements de données sans vous soucier de la structure des données, comme le nombre de types de champs pour stocker la valeur.
  • MongoDB est une base de données distribuée qui prend en charge la mise à l’échelle horizontale et la distribution géographique très facile à utiliser.

Maintenant que nous connaissons la base de données MongoDB, voyons le processus que nous devons suivre pour nous connecter à la base de données MongoDB et effectuer Insert, Read, Update, Delete dans MongoDB à l’aide de PyMongo.

Ce qui doit être fait?

  1. Installation des outils nécessaires pour se connecter à MongoDB.
  2. Importation de la bibliothèque – PyMongo.
  3. Connexion à la base de données MongoDB.
  4. Création/insertion du document dans la collection de la base de données.
  5. Lecture du document que nous avons stocké dans la collection de la base de données.
  6. Mise à jour du document que nous avons stocké dans la collection de la base de données.
  7. Suppression du document que nous avons stocké dans la collection de la base de données.

Étape -1 : Installation des outils requis pour se connecter à MongoDB

L’outil de module requis dont nous avons besoin s’appelle PyMongo. Il s’agit d’une bibliothèque basée sur python qui vous permet d’interagir avec la base de données MongoDB simplement un pilote pour que Python utilise la base de données MongoDB. Pour effectuer Insert, Read, Update, Delete dans MongoDB à l’aide de PyMongo, nous devons installer cette bibliothèque dans notre système pour cela, vous pouvez simplement copier-coller ce commun sur votre invite de commande et commencer l’installation.

pip3 install pymongo

Étape -2 : Importation de la bibliothèque – PyMongo

La première chose que nous allons faire est d’importer la bibliothèque PyMongo qui vous permet d’interagir avec la base de données MongoDB avec son pilote natif python :

import pymongo  
from pymongo import MongoClient

Étape -3 : connexion à la base de données MongoDB

Dans MongoDB, vous pouvez utiliser un serveur de base de données de base cloud ou une base de données locale dans les deux cas, vous devez d’abord créer un serveur pour le serveur de base cloud, vous pouvez accéder à ce site Web et vous inscrire.

Et pour l’hébergement local, vous pouvez télécharger et installer le serveur communautaire MongoDB à partir de ce site Web.

Pour établir une connexion locale à la base de données, nous devrons définir l’hôte et le port que nous avons l’intention d’utiliser et d’exécuter sur la machine locale et nous devons définir l’insertion d’objet dans la base de données MongoDB.

HOST = 'localhost'
PORT = 27017
client = MongoClient(HOST, PORT)
database = client.cookbook
recipes = database.recipes

Maintenant que nous avons la connexion dans la base de données MongoDB et la collection, faisons l’insertion, la lecture, la mise à jour, la suppression dans MongoDB en utilisant PyMongo.

Étape -4 : Création/insertion du document

Pour insérer le document nommé ‘recipe’ dans la collection de base de données pour effectuer Insert, Read, Update, Delete dans MongoDB à l’aide de PyMongo, nous devons utiliser l’API MongoDB pour insérer notre document dans notre collection à l’aide de insert_one() :

recipe = {'title': 'chocolate milk',
          'description': 'Yummy drink',
          'ingredients': [
              {'name': 'milk', 'quantity': 8, 'unit of measure': 'ouncce'},
              {'name': 'chocolate syrup', 'quantity': 2, 'unit of measure': 'ouncce'}
          ],
          'yield': {'quantity': 1, 'unit': 'glass'},
          'prep time': 0,
          'cook time': 0,
          'author': 'Biff Tannen',
          'uploaded_by': 'kenwalger',
          }

recipes.insert_one(recipe)

Étape -5 : Lecture du document

La lecture du document dans MongoDB est très facile. pour cela, nous devons simplement utiliser la fonction appelée find_one() (find_one() est un opérateur de niveau collection du pilote PyMongo). comme son nom l’indique, il va simplement trouver le document dont nous avons besoin dans la collection et importer le document , c’est très utile si vous n’avez besoin de trouver qu’un seul document dans la base de données. et nous allons ajouter pprint pour que nos données soient imprimées de manière jolie.

import pprint

print("\nPretty Printed document: \n")
pprint.pprint(recipes.find_one())

Sortir:



{'_id': ObjectId('588541a0146bde28a08217d4'),
 'author': 'Biff Tannen',
 'cook time': 0,
 'description': 'Yummy drink',
 'ingredients': [{'name': 'milk', 'quantity': 8, 'unit of measure': 'ounce'},
                 {'name': 'chocolate syrup',
                  'quantity': 2,
                  'unit of measure': 'ounce'}],
 'prep time': 0,
 'title': 'chocolate milk',
 'uploaded_by': 'kenwalger',
 'yield': {'quantity': 1, 'unit': 'glass'}}

Étape -6 : Mise à jour du document

Pour mettre à jour le document de la collection de la base de données, nous allons définir des critères afin de mettre à jour notre collection d’une manière spécifique ici, nous allons mettre à jour le nom de l’auteur. pour cela, nous devons utiliser la méthode update_one() avec l’opérateur $set et imprimer les nouvelles données du document stocké dans la collection de la base de données.

recipes.update_one({'title': 'chocolate milk'},
                   {'$set': {'author': 'George McFly'}
                    }
                   )
print("\nShould be George McFly: ")
pprint.pprint(recipes.find_one({'author': 'George McFly'}))

Nous mettons à jour ici le nom de l’auteur.

Sortir:

{'_id': ObjectId('588541a0146bde28a08217d4'),
 'author': 'George McFly',
 'cook time': 0,
 'description': 'Yummy drink',
 'ingredients': [{'name': 'milk', 'quantity': 8, 'unit of measure': 'ounce'},
                 {'name': 'chocolate syrup',
                  'quantity': 2,
                  'unit of measure': 'ounce'}],
 'prep time': 0,
 'title': 'chocolate milk',
 'uploaded_by': 'kenwalger',
 'yield': {'quantity': 1, 'unit': 'glass'}}

Après avoir exécuté le code, vous pouvez voir la différence car nous avons mis à jour le document, il reflète le nom du changement de Biff Tannen à George McFly. Par conséquent, le processus a été un succès et vous pouvez dire qu’il s’agit du même document car le numéro d’identification est le même qu’auparavant.

Étape -7 : Suppression du document

Le processus de suppression du document est très simple, tout comme la lecture du document. Nous devons simplement utiliser une méthode appelée delete_one(). Nous devons passer un argument pour quel document supprimer. Mais notre collection de base de données ne contient qu’un seul document, c’est pourquoi nous avons une variété de sélections, ici nous allons utiliser l’identifiant unique « _id » pour nous assurer que nous ne supprimons que le document que nous voulons au cas où il y aurait beaucoup de document dans votre collection de base de données.

recipes.delete_one({'author': 'George McFly'})
print('Deleted the record:')
pprint.pprint(recipes.find_one())

Sortir:

Deleted the record:

Cela signifie que notre collection de base de données est vide.

Derniers mots

Dans cet article, nous apprenons comment utiliser la base de données MongoDB, comment installer la bibliothèque PyMongo, comment établir une connexion à la base de données MongoDB et comment insérer, lire, mettre à jour, supprimer dans MongoDB en utilisant PyMongo le document stocké dans la MongoDB collecte de la base de données.

Faites-nous savoir si vous avez des questions/commentaires concernant ce processus. Bon codage !

Voici quelques tutoriels utiles que vous pouvez lire :