MongoDB offre à ses utilisateurs la possibilité de créer des bases de données modernes facilement accessibles et manipulables.
MongoDB est une base de données open source NoSQL disponible pour une utilisation sur tous les systèmes d'exploitation.
Si vous avez appris la conception de bases de données à l'école, il est probable que vous n'ayez pas appris à utiliser MongoDB ou que vous n'ayez pas acquis beaucoup d'expérience avec les bases de données NoSQL. Ce n’est pas une surprise: jusqu’en 1998, de nombreuses personnes n’avaient même pas entendu parler de NoSQL, et ce n’est qu’en 2009 que les bases de données NoSQL ont commencé à gagner du terrain.
Qu'est-ce que NoSQL?
L'acronyme SQL signifie «langage de requête structuré». SQL est utilisé pour effectuer des opérations mathématiques sur des données contenues dans des bases de données structurées de manière rigide par des lignes et des colonnes (tables).
L'acronyme NoSQL, selon la personne que vous demandez, signifie «non seulement SQL» ou «non SQL». Cependant, le seul fait que tout le monde peut convenir que NoSQL est utilisé pour effectuer des opérations sur des données qui sont conservées dans des bases de données non structurées par des lignes et Colonnes.
Il existe quelques bases de données NoSQL, mais le nom qui se tient au-dessus du reste est MongoDB. En fait, certaines personnes pensent que MongoDB est la seule base de données du genre.
Qu'est-ce que MongoDB?
NoSQL prend en charge quatre types de bases de données différents: document, magasins de valeurs-clés, orientés colonnes et graphiques. MongoDB est une base de données de documents car elle stocke les données dans un document de type JSON et, comme toutes les bases de données, elle prend en charge toutes les opérations CRUD essentielles.
En rapport: Comment une base de données MongoDB peut mieux organiser vos données
Que sont les opérations CRUD?
L'acronyme CRUD signifie «créer, lire, mettre à jour et supprimer». CRUD représente les quatre exigences fonctionnelles de base de toutes les bases de données. Si vous utilisez une base de données qui ne vous permet pas de créer, lire, mettre à jour ou supprimer des enregistrements, ce n'est pas une base de données.
Télécharger MongoDB
Avant de pouvoir effectuer des opérations CRUD dans MongoDB, vous devez télécharger et installer MongoDB sur votre appareil (ou utilisez une version cloud disponible), exécutez le serveur MongoDB, connectez-vous à celui-ci et créez enfin un nouveau base de données.
Le serveur MongoDB peut être téléchargé à partir du site officiel Site Web de MongoDB.
Exécution du serveur MongoDB
Exécutez le serveur MongoDB à partir de la console de votre IDE.
/Users/Administrator/mongodb/bin/mongod.exe --dbpath = / Users / Administrator / mongodb-data
Le code ci-dessus exécute le serveur MongoDB. La première moitié fournit le chemin direct vers le fichier exécutable MongoDB (mongod.exe) qui est stocké sur votre appareil. Le chemin d'accès sur votre appareil doit être différent, mais l'objectif est d'atteindre le fichier mongod.exe dans le dossier bin.
La seconde moitié du code (qui est séparée par la barre d'espace) est un autre chemin. Ce chemin mène à «mongodb-data», qui est un fichier que vous devrez créer vous-même. Ce fichier contiendra toutes les données créées dans notre base de données.
Notre fichier s'appelle «mongodb-data», mais le nom peut être celui que vous jugez approprié.
L'exécution du code ci-dessus devrait produire plusieurs lignes de code, mais les deux lignes auxquelles vous devez prêter une attention particulière peuvent être vues ci-dessous:
{"t": {"$ date": "2021-04-14T18: 10: 11.779-05: 00"}, "s": "I", "c": "NETWORK", "id": 23015, "ctx": "listener", "msg": "Écouter sur", "attr": {"address": "127.0.0.1"}}
{"t": {"$ date": "2021-04-14T18: 10: 11.797-05: 00"}, "s": "I", "c": "NETWORK", "id": 23016, "ctx": "listener", "msg": "En attente de connexions", "attr": {"port": 27017, "ssl": "off"}}
Ces deux lignes contiennent respectivement l'hôte local et le port par défaut du serveur MongoDB. Ces deux nombres sont nécessaires pour créer ultérieurement une connexion au serveur MongoDB afin que nous puissions effectuer nos opérations CRUD.
Exécution des opérations CRUD
Maintenant que notre serveur MongoDB est opérationnel, nous pouvons nous y connecter (en utilisant le pilote approprié) et commencer à effectuer des opérations CRUD. Pour cet article, nous allons créer une base de données d'utilisateurs simple qui stockera les noms et l'âge de nos utilisateurs.
Créer un utilisateur
Il existe deux manières principales d'insérer des utilisateurs dans une base de données MongoDB. Les deux méthodes sont assez similaires, mais la méthode que vous devez choisir dépend du nombre d'utilisateurs que vous souhaitez créer dans une instance spécifique. Si votre objectif est de créer un utilisateur, vous devez utiliser le insertOne méthode.
Cependant, si l'objectif est de créer plusieurs utilisateurs à la fois, alors le insérerBeaucoup la méthode est une meilleure option.
Exemple de méthode MongoDB insertOne
// importer mongodb et utiliser la déstructuration pour obtenir la fonction MongoClient
const {MongoClient} = require ("mongodb");
// l'URL de connexion et la base de données à laquelle nous avons l'intention de nous connecter
const connectionURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'gestionnaire d'utilisateurs';
// utilisation de la fonction de connexion sur MongoClient pour se connecter au serveur MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (error, client) => {
// vérifier si la connexion a été établie
if (erreur) {
return console.log ('Impossible de se connecter à la base de données');
}
// accéder à la base de données du gestionnaire d'utilisateurs
const db = client.db (databaseName);
// insère un utilisateur dans la base de données
db.collection ('utilisateurs'). insertOne ({
nom: 'John Doe',
âge: '28'
}, (erreur, résultat) => {
if (erreur) {
return console.log ('Impossible de créer l'utilisateur');
}
console.log (result.ops);
})
})
Avant de pouvoir créer des utilisateurs, une connexion doit être établie avec le serveur MongoDB à l'aide du pilote MongoDB de la langue que vous utilisez. Le pilote le plus populaire, et celui que nous utilisons dans ce didacticiel, est le pilote NodeJS.
Avec la première ligne de notre code ci-dessus, nous pouvons utiliser la méthode de déstructuration pour récupérer la fonction MongoClient de notre serveur.
Le MongoClient accepte trois arguments:
- Une URL (utilisée pour se connecter au serveur MongoDB)
- Options / Paramètres (qui dans ce cas définit la variable «useUnifiedTopology» sur true, pour faciliter l'utilisation du nouveau moteur de détection et de surveillance du serveur)
- Une fonction de rappel qui prend deux arguments (erreur et client)
Dans la fonction de rappel de la méthode MongoClient, nous pouvons enfin insérer un utilisateur dans notre base de données. Mais avant d'en arriver là, nous devons accéder à la base de données du gestionnaire d'utilisateurs.
L'un des avantages de l'utilisation de MongoDB est qu'il n'est pas nécessaire de créer explicitement une base de données. Une fois qu'une référence à une base de données particulière est générée à l'aide de l'argument «client» (comme vu dans le code ci-dessus), vous êtes libre de commencer à la manipuler.
La référence à la base de données du gestionnaire d'utilisateurs que nous générons est stockée dans la variable «db», que nous utiliserons pour insérer notre premier utilisateur dans la base de données.
En utilisant la référence «db», nous pouvons créer une nouvelle collection, à laquelle nous attribuons le nom «utilisateur».
le insertOne La méthode prend deux arguments obligatoires; le document (l'utilisateur) et une fonction de rappel. Avec le insertOne méthode, nous pouvons insérer un utilisateur du nom de Peter Davis avec l'âge de 32, dans notre base de données.
La fonction de rappel prend deux arguments (erreur et résultat). La fonction result contient une méthode ops que nous utilisons pour voir l'utilisateur que nous venons de créer dans notre base de données. Cela produit la sortie suivante dans la console, après l'exécution du code ci-dessus:
[{nom: 'Peter Davis', âge: '32', _id: 60772f869475e84740003c45}]
Bien que nous n'ayons fourni que deux champs lors de la création d'un utilisateur, vous pouvez voir dans la sortie ci-dessus qu'un troisième champ a été généré. C'est une autre chose intéressante à propos de MongoDB; il génère automatiquement un identifiant unique pour chaque document qu'il crée.
En rapport: En quoi la modélisation des données est-elle différente dans MongoDB?
Lire un utilisateur dans MongoDB
Les deux principales méthodes utilisées pour lire des documents à partir d'un MongoDB sont: trouve et findOne. le trouve est utilisée pour lire plusieurs documents à la fois et la findOne est utilisée pour lire un seul document à la fois.
Exemple de méthode MongoDB findOne
// importer mongodb et utiliser la déstructuration pour obtenir la méthode MongoClient
const {MongoClient} = require ("mongodb");
// l'URL de connexion et la base de données à laquelle nous avons l'intention de nous connecter
const connectionURL = 'mongodb: //127.0.0.1: 27017';
const databaseName = 'gestionnaire d'utilisateurs';
// utilisation de la fonction de connexion sur MongoClient pour se connecter au serveur MongoDB
MongoClient.connect (connectionURL, {useUnifiedTopology: true}, (error, client) => {
// vérifier si la connexion a été établie
if (erreur) {
return console.log ('Impossible de se connecter à la base de données');
}
// créer la base de données du gestionnaire d'utilisateurs
const db = client.db (databaseName);
// recherche d'un utilisateur dans la base de données
db.collection ('utilisateurs'). findOne ({nom: 'Peter Davis'}, (erreur, utilisateur) => {
if (erreur) {
return console.log ('Impossible de trouver l'utilisateur');
}
console.log (utilisateur);
})
});
Il est bon de se rappeler que vous devrez toujours vous connecter au serveur MongoDB et à la base de données appropriée avant de pouvoir effectuer des opérations CRUD (comme indiqué dans notre exemple ci-dessus).
le findOne La méthode prend deux arguments obligatoires. Le premier argument contient les critères de recherche; vous pouvez rechercher un document en utilisant n'importe quel nom de variable qui lui est propre. Dans notre exemple ci-dessus, nous utilisons le nom «Peter Davis».
Le deuxième argument de la findOne method est la fonction de rappel qui prend deux arguments; le premier est une erreur si le document ne peut pas être localisé, et le second est le document (que nous avons nommé "utilisateur").
L'exécution du code ci-dessus produira le résultat suivant dans la console:
{_id: 60772f869475e84740003c45, nom: "Peter Davis", âge: "32"}
Mettre à jour un utilisateur dans MongoDB
Il existe deux méthodes disponibles pour mettre à jour des documents dans MongoDB. Bien que la structure des deux soit très similaire, updateOne est utilisé pour mettre à jour un document à la fois et mise à jour est utilisé pour mettre à jour de nombreux documents à la fois.
Exemple de méthode MongoDB updateOne
// Mettre à jour l'âge d'un utilisateur
db.collection ('utilisateurs'). updateOne ({nom: "Peter Davis"},
{
$ set: {
âge: '24'
}
})
Avec le code ci-dessus, nous pouvons mettre à jour l'âge de Peter Davis à 24 ans.
Suppression d'un utilisateur dans MongoDB
Il existe deux méthodes disponibles pour supprimer un document de MongoDB. le deleteOne est utilisée pour supprimer un seul document, et la supprimerBeaucoup est utilisée pour supprimer plusieurs documents.
Exemple de méthode MongoDB deleteOne
// supprimer un document
db.collection ('utilisateurs'). deleteOne ({nom: 'Peter Davis'})
L'opération de suppression est l'opération CRUD la plus simple qui puisse être effectuée dans MongoDB. Comme vous pouvez le voir dans l'exemple ci-dessus (sans inclure le code de connexion requis et la fonction de rappel), cela ne prend qu'une ligne de code.
Vous pouvez maintenant effectuer des opérations CRUD dans MongoDB
Vous avez maintenant des connaissances de base sur MongoDB et vous savez ce que signifie NoSQL. Vous savez également ce que signifie l'acronyme CRUD et pourquoi ces opérations sont des qualités essentielles de toute base de données.
Cet article vous fournit tous les outils nécessaires pour effectuer les quatre opérations CRUD de base dans MongoDB. Maintenant que vous êtes équipé du savoir-faire des opérations CRUD, vous pouvez commencer à apprendre comment modéliser au mieux vos données à l'aide de MongoDB.
Crédit d'image: Alexander Sosluev /WiKiMedia Commons
Vous envisagez une approche différente des bases de données? Voici comment fonctionne la modélisation des données dans MongoDB.
Lire la suite
- Programmation
- Tutoriels de codage
- base de données
Kadeisha Kean est un développeur de logiciels Full-Stack et un rédacteur technique / technologique. Elle a la capacité distincte de simplifier certains des concepts technologiques les plus complexes; produire du matériel facilement compréhensible par tout novice en technologie. Elle est passionnée par l'écriture, le développement de logiciels intéressants et les voyages à travers le monde (à travers des documentaires).
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!
Un pas de plus…!
Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.