MongoDB

MongoDB是基于Javascript语言的数据库,存储格式是JSON,而Node也是基于JavaScript的环境(库),所以node和mongoDB的搭配能减少因为数据转换带来的时间空间开销。
Mongoose
是MongoDB的一个对象模型工具,它将数据库中的数据转换为JavaScript对象以供你在应用中使用,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单。
安装模块mongoose
npm install mongoose
[注意] mongoose模块依赖mongodb
npm常用命令
npm install <name> -g 将包安装到全局环境中 npm install <name> –-save 安装的同时,将信息写入package.json中,便于后期维护查看 npm remove <name>移除 npm update <name>更新 npm root -g 查看全局的包安装路径 npm -v 查看npm的版本
开启mongodb数据库
进入mongod所在目录 执行命令 ./mongod --dbpath=存放数据的位置
例1:./mongod --dbpath=../data/dbname
例2:./mongod --dbpath=../data/dbname --port 自定义端口号,默认27017(了解即可,不推荐使用,修改默认端口号后期维护麻烦)
插入数据
// 引入模块
var mongoose = require('mongoose');
// 连接数据库
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/test');
// 设置数据类型
var monSchema = new mongooose.Schema({
name:{type:String,default:"username"},
age:{type:Number},
sex:{type:String}
});
// 选择集合
var monModel = db.model('user',monSchema);
// 数据集
var content = {name:"Nick",age:23,sex:'男'};
// 实例化对象并插入数据
var monInsert = new monModel(content);
monInsert.save(function(err){
if(err){
console.log(err);
}else{
console.log('成功插入数据');
}
db.close();
});
删除数据
// 引入模块
var mongoose = require('mongoose');
// 连接数据库
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/test');
// 设置数据类型
var monSchema = new mongooose.Schema({
name:{type:String,default:"name"},
age:{type:Number},
sex:{type:String}
});
// 选择集合
var monModel = db.model('user',monSchema);
// 要删除的条件
var del = {name:"Nick"};
monModel.remove(del,function(err,result){
if(err){
console.log(err);
}else{
console.log("update");
}
db.close();
});
修改数据
// 引入模块
var mongoose = require('mongoose');
// 连接数据库
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/test');
// cosole.log(db);
// 设置数据类型
var monSchema = new mongooose.Schema({
name:{type:String,default:"name"},
age:{type:Number},
sex:{type:String}
});
// 选择集合
var monModel = db.model('user',monSchema);
// 原数据字段值
var oldValue = {name:"Nick"};
// 单条件更新
var newData1 = {$set:{name:"内容"}};
// 多条件更新
var newData2 = {$set:{name:"内容",age:2}};
monModel.update(oldValue,newData,function(err,result){
if(err){
console.log(err);
}else{
console.log("update");
}
db.close();
});
查询数据
// 引入模块
var mongoose = require('mongoose');
// 连接数据库
var db = mongoose.createConnection('mongodb://127.0.0.1:27017/test');
// cosole.log(db);
// 设置数据类型
var monSchema = new mongooose.Schema({
name:{type:String,default:"name"},
age:{type:Number},
sex:{type:String}
});
// 选择集合
var monModel = db.model('user',monSchema);
var content = {name:"姓名2"};
var field = {name:1,age:1,sex:1};
monModel.find(content,field,function(err,result){
if(err){
console.log(err);
}else{
console.log(result);
}
db.close();
});
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# nodejs操作mongoose
# mongoose增删改查
# nodejs连接mongoose
# egg.js的基本使用和调用数据库的方法示例
# 关于自定义Egg.js的请求级别日志详解
# KOA+egg.js集成kafka消息队列的示例
# mongoose更新对象的两种方法示例比较
# 关于在mongoose中填充外键的方法详解
# 利用Mongoose让JSON数据直接插入或更新到MongoDB
# 关于mongoose连接mongodb重复访问报错的解决办法
# Mongoose 在egg中的使用详解
# 连接数据库
# 后期
# 端口号
# 你在
# 推荐使用
# 自定义
# 装了
# 转换为
# 它将
# 数据库中
# 变得更加
# 多条
# 大家多多
# 以供
# 移除
# 文档
# 是基于
# install
# bash
# npm
相关文章:
制作宣传网站的软件,小红书可以宣传网站吗?
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
家具网站制作软件,家具厂怎么跑业务?
建站之星如何助力网站排名飙升?揭秘高效技巧
音乐网站服务器如何优化API响应速度?
网页设计与网站制作内容,怎样注册网站?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
山东云建站价格为何差异显著?
建站之星2.7模板:企业网站建设与h5定制设计专题
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
如何设计高效校园网站?
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
Python多线程使用规范_线程安全解析【教程】
如何在Windows 2008云服务器安全搭建网站?
如何通过FTP空间快速搭建安全高效网站?
网站制作公司排行榜,四大门户网站排名?
如何用AWS免费套餐快速搭建高效网站?
在线制作视频的网站有哪些,电脑如何制作视频短片?
电商网站制作价格怎么算,网上拍卖流程以及规则?
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
家庭服务器如何搭建个人网站?
建站之星安装需要哪些步骤及注意事项?
如何快速生成可下载的建站源码工具?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
c# await 一个已经完成的Task会发生什么
seo网站制作优化,网站SEO优化步骤有哪些?
如何设置并定期更换建站之星安全管理员密码?
建站之星北京办公室:智能建站系统与小程序生成方案解析
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
长沙做网站要多少钱,长沙国安网络怎么样?
深圳网站制作培训,深圳哪些招聘网站比较好?
建站ABC备案流程中有哪些关键注意事项?
c++怎么用jemalloc c++替换默认内存分配器【性能】
宁波免费建站如何选择可靠模板与平台?
建站上传速度慢?如何优化加速网站加载效率?
Swift中swift中的switch 语句
模具网站制作流程,如何找模具客户?
如何在服务器上三步完成建站并提升流量?
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
定制建站方案优化指南:企业官网开发与建站费用解析
专业公司网站制作公司,用什么语言做企业网站比较好?
建站之星×万网:智能建站系统+自助建站平台一键生成
官网网站制作腾讯审核要多久,联想路由器newifi官网
网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
如何选择靠谱的建站公司加盟品牌?
怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?
相册网站制作软件,图片上的网址怎么复制?
*请认真填写需求信息,我们会在24小时内与您取得联系。