Maison > interface Web > js tutoriel > Commencez par créer un projet simple sur MongoDB avec NodeJs

Commencez par créer un projet simple sur MongoDB avec NodeJs

王林
Libérer: 2024-07-19 04:24:52
original
392 Les gens l'ont consulté

Start With Creating a Simple Project on MongoDB with NodeJs

Connexion à MongoDB

const { MongoClient } = require('mongodb');

const uri = "your_mongodb_uri";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

async function run() {
  try {
    await client.connect();
    console.log("Connected to MongoDB");
  } finally {
    await client.close();
  }
}

run().catch(console.dir);
Copier après la connexion

Insérer un seul document

const insertDocument = async (client, newDoc) => {
  const result = await client.db("database_name").collection("collection_name").insertOne(newDoc);
  console.log(`New document created with the following id: ${result.insertedId}`);
};

// Usage
insertDocument(client, { name: "John Doe", age: 30 });

Copier après la connexion

Insérer plusieurs documents

const insertDocuments = async (client, newDocs) => {
  const result = await client.db("database_name").collection("collection_name").insertMany(newDocs);
  console.log(`${result.insertedCount} documents were inserted`);
};

// Usage
insertDocuments(client, [
  { name: "John Doe", age: 30 },
  { name: "Jane Doe", age: 25 }
]);

Copier après la connexion

Trouver un seul document

const findOneDocument = async (client, query) => {
  const result = await client.db("database_name").collection("collection_name").findOne(query);
  console.log(result);
};

// Usage
findOneDocument(client, { name: "John Doe" });

Copier après la connexion

Recherche de plusieurs documents

const findDocuments = async (client, query) => {
  const cursor = client.db("database_name").collection("collection_name").find(query);
  const results = await cursor.toArray();
  console.log(results);
};

// Usage
findDocuments(client, { age: { $gt: 20 } });

Copier après la connexion

Mettre à jour un seul document

const updateDocument = async (client, filter, updateDoc) => {
  const result = await client.db("database_name").collection("collection_name").updateOne(filter, { $set: updateDoc });
  console.log(`${result.matchedCount} document(s) matched the filter, updated ${result.modifiedCount} document(s)`);
};

// Usage
updateDocument(client, { name: "John Doe" }, { age: 35 });

Copier après la connexion

Mise à jour de plusieurs documents

const updateDocuments = async (client, filter, updateDoc) => {
  const result = await client.db("database_name").collection("collection_name").updateMany(filter, { $set: updateDoc });
  console.log(`${result.matchedCount} document(s) matched the filter, updated ${result.modifiedCount} document(s)`);
};

// Usage
updateDocuments(client, { age: { $lt: 30 } }, { isActive: true });

Copier après la connexion

Suppression d'un seul document

const deleteDocument = async (client, query) => {
  const result = await client.db("database_name").collection("collection_name").deleteOne(query);
  console.log(`${result.deletedCount} document(s) was/were deleted`);
};

// Usage
deleteDocument(client, { name: "John Doe" });

Copier après la connexion

Suppression de plusieurs documents

const deleteDocuments = async (client, query) => {
  const result = await client.db("database_name").collection("collection_name").deleteMany(query);
  console.log(`${result.deletedCount} document(s) was/were deleted`);
};

// Usage
deleteDocuments(client, { age: { $lt: 25 } });

Copier après la connexion

Création d'un index

const createIndex = async (client, index) => {
  const result = await client.db("database_name").collection("collection_name").createIndex(index);
  console.log(`Index created: ${result}`);
};

// Usage
createIndex(client, { name: 1 });

Copier après la connexion

Lire la suite

Opérateur de flèche en JS

Puissance de l'informatique sans serveur avec AWS Lambda

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal