MongoDB MongoDB nos proporciona un esquema de base de datos flexible que tiene sus propias ventajas y desventajas. Cada registro en las colecciones de MongoDB no depende de los otros registros presentes en una colección particular sobre la base de la estructura. Podemos añadir cualquier clave nueva en cualquier registro según la necesidad. No existe una estructura adecuada para las colecciones MongoDB y restricciones en las colecciones. Echemos un vistazo a un ejemplo.
MongoDB:
Database: GFG Collection: GFG1
En el ejemplo anterior, podemos ver fácilmente que no existe un esquema adecuado para una colección en MongoDB. Podemos usar cualquier número de diferentes claves y valores en la colección. Este fenómeno podría crear algunos problemas. Así que veamos cómo podemos superar este problema.
Mongoose.module es uno de los módulos externos más potentes de node.js. Mongoose es un ODM (Modelado de base de datos de objetos) de MongoDB que se utiliza para traducir el código y su representación de MongoDB al servidor Node.js.
Ventajas del módulo Mongoose:
- La validación de la colección de la base de datos MongoDB se puede realizar fácilmente.
- La estructura predefinida se puede implementar en la colección.
- Las restricciones se pueden aplicar a documentos de colecciones utilizando Mongoose.
El módulo Mongoose proporciona varias funciones para manipular los documentos de la colección de la base de datos MongoDB (Consulte este enlace)
Implementación para estructura definida para Colección:
Módulo de instalación:
npm install mongoose
Estructura del proyecto:
Ejecutando el servidor en IP local: los datos son el directorio donde está presente el servidor MongoDB.
mongod --dbpath=data --bind_ip 127.0.0.1
Índice.js
Javascript
// Importing mongoose module const mongoose = require("mongoose") // Database Address const url = "mongodb://localhost:27017/GFG" // Connecting to database mongoose.connect(url).then((ans) => { console.log("ConnectedSuccessful") }).catch((err) => { console.log("Error in the Connection") }) // Calling Schema class const Schema = mongoose.Schema; // Creating Structure of the collection const collection_structure = new Schema({ name: { type: String, require: true }, marks: { type: Number, default: 0 } }) // Creating collection const collections = mongoose.model( "GFG2", collection_structure) // Inserting one document collections.create({ name: "aayush" }).then((ans) => { console.log("Document inserted") // Inserting invalid document collections.create({ name: "saini", marks: "#234", phone: 981 }).then((ans) => { console.log(ans) }).catch((err) => { // Printing the documents collections.find().then((ans) => { console.log(ans) }) // Printing the Error Message console.log(err.message) }) }).catch((err) => { // Printing Error Message console.log(err.message) })
Ejecute el archivo index.js usando el siguiente comando:
node index.js
Salida de la consola :
El módulo Mongoose impuso una estructura definida a la colección y la hace rígida.
Publicación traducida automáticamente
Artículo escrito por zack_aayush y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA