
1. Crear proyecto e instalar MongoDB
Creemos un proyecto y naveguemos a la carpeta del proyecto:
#create project
mkdir nodemongo
#go to folder
cd nodemongo
Luego inicialice el proyecto:
npm init -y
Ahora instale el paquete oficial de MongDB usando este comando:
npm install mongodb
2. Conéctese a MongoDB
En el directorio raíz, cree un archivo llamado index.js . Abra el archivo y pegue este código:
const mongo = require('mongodb').MongoClient // mongodb client
const url = 'mongodb://localhost:27017' // you can write remote url too
mongo.connect(url, {
useNewUrlParser: true,
useUnifiedTopology: true
}, (err, client) => {
if (err) {
console.error(err)
return
}
// success: write your logic here
})
3. Crear base de datos y colección
Podemos crear o conectarnos fácilmente a una base de datos existente usando el client.db()
método.
const db = client.db('mynotepaper')
Conéctese para crear una colección (tabla) usando el db.collection()
método.
const collection = db.collection('books')
El archivo index.js se ve así:
const mongo = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017'
mongo.connect(url, {
useNewUrlParser: true,
useUnifiedTopology: true
}, (err, client) => {
if (err) {
console.error(err)
return
}
// create/connect db
const db = client.db('mynotepaper')
console.log("Database connected…!")
// create/select collection
const collectionBook = db.collection('books')
// more logic
})
Ejecutar node index.js
o node index
comando para crear una base de datos mynotepaper y una colección de libros .
4. Insertar documento
Para agregar un objeto, necesitamos usar el insertOne()
método. Eche un vistazo a la estructura:
collectionName.insertOne({Object}, (err, result) => { // })
Agreguemos un libro:
var document = {
name: "Book 1",
author: "Author 1"
}
collectionBook.insertOne(document, (err, result) => {
console.log(result)
})
Podemos agregar muchos documentos a la vez. La estructura:
collectionName.insertMany([Array], (err, result) => {
//
})
Un ejemplo:
var documents = [
{
name: "Book 3",
author: "Author 3"
},
{
name: "Book 4",
author: "Author 4"
}
]
collectionBook.insertMany(documents, (err, result) => {
console.log(result)
})
5. Recuperar documento
Obtenga todos los documentos:
collectionBook.find().toArray((err, items) => {
console.log(items)
})
Obtenga un solo documento:
collectionBook.findOne({name: 'Book 1'}, (err, item) => {
console.log(item)
})
Colección de filtros:
collectionBook.find({name: 'Book 1'}).toArray((err, items) => {
console.log(items)
})
6. Actualizar documento
Usando el updateOne()
método, podemos actualizar un documento existente:
collectionBook.find({name: 'Book 1'}).toArray((err, items) => {
console.log(items)
})
7. Actualizar documento
Usando el updateOne()
método, podemos actualizar un documento existente:
collectionBook.updateOne({name: 'Book 1'}, {'$set': {'name':'Book 5','author':'Author 5'}}, (err, item) => {
console.log(item)
})
8. Eliminar documento
Utilice el deleteOne()
método para eliminar un documento:
collectionBook.deleteOne({name: 'Book 1'}, (err, item) => {
console.log(item)
})
9. Usar promesas
Podemos usar promesas y async / await. Para obtener un documento, la llamada normal es:
collectionBook.findOne({name: 'Book 2'}, (err, item) => {
console.log(item)
})
Podemos llamar usando promesas:
collectionBook.findOne({name: 'Book 2'})
.then(item => {
console.log(item)
})
.catch(err => {
console.error(err)
})
})
10. Conexión cercana
Después de completar todas las operaciones, debemos cerrar el objeto cliente MongoDB.
client.close()
Eso es todo. Gracias por leer.