mongoose实现数据 的增、删、改、查

一、mongoose 介绍

Mongoose 是在 node.js 异步环境下对 mongodb 进行便捷操作的对象模型工具。Mongoose
是 NodeJS 的驱动,不能作为其他语言的驱动。

Mongoose  有两个特点
1、通过关系型数据库的思想来设计非关系型数据库
2、基于 mongodb 驱动,简化操作
二、mongoose  的安装以及使用
官网:https://mongoosejs.com/

1.  安装
npm i mongoose --save
2、 、入 引入 mongoose  并连接数据库
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
如果有账户密码需要采用下面的连接方式:
mongoose.connect('mongodb://eggadmin:123456@localhost:27017/eggcms');
3、 定义 Schema
数据库中的 Schema,为数据库对象的集合。schema 是 mongoose 里会用到的一种数据模式,
可以理解为表结构的定义;每个 schema 会映射到 mongodb 中的一个 collection,它不具备
操作数据库的能力
var UserSchema=mongoose.Schema({
name: String,
age:Number,
status:'number'
})
4、 创建数据模型
定义好了 Schema,接下就是生成 Model。model 是由 schema 生成的模型,可以对数据库的
操作。
注意:mongoose.model 里面可以传入两个参数也可以传入三个参数
mongoose.model(参数 1:模型名称(首字母大写),参数 2:Schema)
mongoose.model(参数 1:模型名称(首字母大写),参数 2:Schema,参数 3:数据库集合名
称)
入 如果传入 2  个参数的话:这个模型会和模型名称相同的复数的数据库建立连接:如通过下面
方法创建模型,那么这个模型将会操作 users 这个集合。
入 如果传入 3  个参数的话:模型默认操作第三个参数定义的集合名称
var User=mongoose.model('User', UserSchema);
5、 查找数据
User.find({},function(err,docs){
if(err){
console.log(err);
return;
}
console.log(docs);
})
6、 增加数据
var u=new User({ //实例化模型 传入增加的数据
name:'lisi2222333',
age:20,
status:true
})
u.save();
7、 修改数据
User.updateOne({ name: 'lisi2222' }, { name: '哈哈哈' }, function(err, res) {
if(err){
console.log(err);
return;
}
console.log('成功')
});
8、 、 删除数据
User.deleteOne({ _id: '5b72ada84e284f0acc8d318a' }, function (err) {
if (err) {
console.log(err);
return;
}
// deleted at most one tank document
console.log('成功');
});
9、 、 保存成功查找
var u=new User({
name:'lisi2222333',
age:20,
status:true //类型转换
})
u.save(function(err,docs){
if(err){
console.log(err);
return;
}
//console.log(docs);
User.find({},function(err,docs){
if(err){
console.log(err);
return;
}
console.log(docs);
})
});
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT侠客行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值