mongoose 的使用【01】:【Express+Mongoose】mongoose入门以及mongoose实现数据的增、删、改、查( 一 )
mongoose01.js :
/* mongoose 的使用: 1、npm 安装 mongoose : npm i mongoose --save ; 2、引入 mongoose 并连接数据库: const mongoose = require('mongoose'); mongoose.connect("mongoose://127.0.0.1:27017/dbname"); //如果数据库开启验证方式,需要账户密码时,请使用: // mongoose.connect("mongodb://username:password@127.0.0.1:27017/dbname); 3、操作books表(集合),首先定义一个 Schema , Schema 里边的对象要跟数据库表里的字段一个一个对应; 4、定义数据库模型,操作数据库: model里面的第一个参数要注意:1-首字母大写,2-要和数据库表(集合)名称对应 【默认情况下,这个模型会和模型名称的复数相同的数据库表建立连接。 模型Book对应books,模型User对应users ;var Book = mongoose.model("Book", BooksSchema);】 【也可以指定映射对应,var Book = mongoose.model("Book", BooksSchema,"bookabc");】 5、查询books表(集合)的数据 6、增加数据 6.1:实例化 Model 通过实例化 Book Model 创建增加的数据 6.2:实例.save() */ const mongoose = require("mongoose"); mongoose.connect("mongodb://127.0.0.1:27017/jtdb"); var BooksSchema = mongoose.Schema({ name: String, author: "string", price: Number, status: Number, }); // 默认映射相对于复数名称的集合 books 集合 // var Book = mongoose.model("Book", BooksSchema); // 指定映射名称 ,对应 bookabc 集合 var Book = mongoose.model("Book", BooksSchema, "bookabc"); // ------------------------------------------------------------------- // 5、查询books表(集合)的数据 Book.find({}, function (err, doc) { if (err) { console.log(err); return; } console.log(doc); }); // ------------------------------------------------------------------- // 6、增加数据 // 实例化 // var Boo = new Book({ name: "碧血剑", price: 46, status: 0 }); // // 执行增加操作 // Boo.save(function (err, data) { // if (err) { // console.log(err); // return; // } // console.log(data); // }); // ------------------------------------------------------------------- // 7、修改数据 // Book.updateOne({ _id: "5ff56b48657c6d20386588ac" }, { price: 66, author: "金庸" }, (err, data) => { // if (err) { // console.log(err); // return; // } // console.log(data); // }); // ------------------------------------------------------------------- // 8、删除数据 // Book.deleteOne({ _id: "5ff56919a6323cc8b493c4ac" }, (err, data) => { // if (err) { // console.log(err); // return; // } // console.log(data); // }); // -------------------------------------------------------------------
另附: