Node.js - MongoDB Créer une Base de Données

Bonjour à tous, aspirants programmeurs ! Aujourd'hui, nous allons entreprendre un voyage passionnant dans le monde de Node.js et MongoDB. En tant que votre enseignant de science informatique bienveillant du quartier, je suis là pour vous guider à travers le processus de création d'une base de données en utilisant ces outils puissants. Ne vous inquiétez pas si vous êtes nouveau en programmation - nous allons commencer par les bases et progresser pas à pas. Alors, prenez une tasse de café (ou votre boisson favorite) et plongeons dedans !

Node.js - MongoDB Create Database

Qu'est-ce que MongoDB ?

Avant de commencer à créer des bases de données, penchons-nous un instant sur ce qu'est MongoDB. Imaginez que vous avez un immense classeur numérique où vous pouvez stocker toutes sortes d'informations. C'est essentiellement ce qu'est MongoDB - une base de données qui stocke les données dans un format flexible, similaire à JSON, appelé BSON (Binary JSON). C'est comme avoir un assistant super-organisé qui peut rapidement trouver et récupérer n'importe quel morceau d'information dont vous avez besoin.

Les Chaînes de Connexion : Votre Passerelle vers MongoDB

Maintenant que nous savons ce qu'est MongoDB, parlons de comment nous nous y connectons. Pensez à une chaîne de connexion comme un secret de poignet entre votre application Node.js et MongoDB. Elle contient toutes les informations nécessaires pour établir une connexion, comme l'adresse du serveur MongoDB, le numéro de port et tout détail d'authentification.

Voici à quoi ressemble une chaîne de connexion MongoDB typique :

mongodb://username:password@hostname:port/database

Décomposons cela :

  • mongodb://: C'est le protocole, indiquant à votre application qu'elle se connecte à une base de données MongoDB.
  • username:password: Vos identifiants de connexion (si requis).
  • hostname: L'adresse du serveur MongoDB (par exemple, localhost pour votre propre machine).
  • port: Le numéro de port sur lequel MongoDB écoute (par défaut est 27017).
  • database: Le nom de la base de données à laquelle vous souhaitez vous connecter.

Exemple : Liste des Bases de Données

Maintenant, mettons les mains dans le cambouis avec un peu de code ! Nous allons commencer par nous connecter à MongoDB et lister toutes les bases de données. C'est un excellent moyen de vérifier si notre connexion fonctionne et de voir quelles bases de données existent déjà.

const MongoClient = require('mongodb').MongoClient;

// URL de connexion
const url = 'mongodb://localhost:27017';

// Nom de la base de données
const dbName = 'myproject';

// Créer un nouveau MongoClient
const client = new MongoClient(url, { useNewUrlParser: true, useUnifiedTopology: true });

// Se connecter au serveur
client.connect(function(err) {
if (err) {
console.error('Échoué à se connecter à MongoDB:', err);
return;
}

console.log("Connecté avec succès au serveur");

// Obtenir la base de données admin
const adminDb = client.db(dbName).admin();

// Lister toutes les bases de données disponibles
adminDb.listDatabases(function(err, dbs) {
if (err) {
console.error('Échoué à lister les bases de données:', err);
return;
}

console.log("Bases de données:");
dbs.databases.forEach(function(db) {
console.log(" - " + db.name);
});

client.close();
});
});

Décomposons ce code :

  1. Nous commençons par exiger le pilote MongoDB pour Node.js.
  2. Nous configurons notre URL de connexion et le nom de la base de données.
  3. Nous créons un nouveau MongoClient avec quelques options pour une meilleure performance.
  4. Nous utilisons la méthode connect pour établir une connexion à MongoDB.
  5. Si la connexion est réussie, nous obtenons la base de données admin.
  6. Nous utilisons la méthode listDatabases pour obtenir une liste de toutes les bases de données.
  7. Nous affichons les noms de toutes les bases de données.
  8. Enfin, nous fermons la connexion.

Lorsque vous exécutez ce code, vous verrez une liste de toutes les bases de données dans votre instance MongoDB. C'est comme demander à votre classeur numérique : "Hey, quels dossiers as-tu ?"

Créer une Nouvelle Base de Données

Maintenant, passons à la partie passionnante - créer notre propre base de données ! En MongoDB, les bases de données et les collections sont créées automatiquement lorsque vous stockez pour la première fois des données dedans. C'est magique - vous n'avez pas besoin de les créer explicitement beforehand.

Créons une nouvelle base de données appelée "myNewDB" et une collection appelée "students" :

const MongoClient = require('mongodb').MongoClient;

// URL de connexion
const url = 'mongodb://localhost:27017';

// Nom de la base de données
const dbName = 'myNewDB';

// Créer un nouveau MongoClient
const client = new MongoClient(url, { useNewUrlParser: true, useUnifiedTopology: true });

// Se connecter au serveur
client.connect(function(err) {
if (err) {
console.error('Échoué à se connecter à MongoDB:', err);
return;
}

console.log("Connecté avec succès au serveur");

// Obtenir la base de données
const db = client.db(dbName);

// Créer une nouvelle collection
db.createCollection("students", function(err, res) {
if (err) {
console.error('Échoué à créer la collection:', err);
return;
}

console.log("Collection créée !");

// Insérer un document
db.collection('students').insertOne({
name: "John Doe",
age: 20,
grade: "A"
}, function(err, res) {
if (err) {
console.error('Échoué à insérer le document:', err);
return;
}

console.log("Document inséré");

// Fermer la connexion
client.close();
});
});
});

Décomposons ce qui se passe ici :

  1. Nous nous connectons à MongoDB comme avant.
  2. Nous utilisons client.db(dbName) pour obtenir notre nouvelle base de données. Si elle n'existe pas, MongoDB la créera pour nous.
  3. Nous créons une nouvelle collection appelée "students" en utilisant db.createCollection().
  4. Nous insérons un document dans notre nouvelle collection en utilisant insertOne().
  5. Enfin, nous fermons la connexion.

Lorsque vous exécutez ce code, MongoDB créera la base de données "myNewDB" et la collection "students", et insérera un document avec les informations de John Doe. C'est comme créer un nouveau classeur, ajouter un dossier appelé "students", et mettre le fichier de John dedans.

Conclusion

Félicitations ! Vous avez juste appris comment vous connecter à MongoDB, lister les bases de données existantes, et créer une nouvelle base de données avec une collection. Vous êtes bien sur le chemin de devenir un magicien des bases de données !

Souvenez-vous, la pratique rend parfait. Essayez de créer différentes bases de données, collections, et insérez divers types de documents. Expérimentez avec les requêtes sur les données que vous avez insérées. Plus vous jouerez avec MongoDB, plus vous deviendrez à l'aise avec lui.

Voici un tableau récapitulatif des principales méthodes que nous avons utilisées :

Méthode Description
MongoClient.connect() Établit une connexion à MongoDB
client.db() Obtient une référence à une base de données
adminDb.listDatabases() Lister toutes les bases de données disponibles
db.createCollection() Crée une nouvelle collection
collection.insertOne() Insère un document dans une collection

Bonne programmation, et peut-être que vos bases de données seront toujours organisées et vos requêtes éclairs !

Credits: Image by storyset