首先要确保mongodb的正确安装,安装参照:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian-or-ubuntu-linux

另外可以参考我的另一篇博文

http://www.cnblogs.com/sexintercourse/p/5774310.html

指导mongo和nodejs的开发

然后下载nodejs的mongodb的driver

npm install mongodb

编写一个测试的程序:

1 var mongodb = require('mongodb');
 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7         console.log('connect');
 8     }else{
 9         console.log(err);
10     }   
11 
12 });

如果最终显示connect则说明成功。

对mongodb的collection的操作

有两种方法链接collection,分别为:

db.collection('mycoll',function(err,coll){});

db.createCollection('mycoll',function(err,coll){});

这两种方法还有第二个可选参数{safe:true},这个参数的作用对于第一种方法,如果加上了这个参数,那么当collection不存在的时候则报错,对于第二种方法,则当collection存在的时候报错

示例:

1 var mongodb = require('mongodb');

 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7       console.log('connect');
 8       db.collection('mycoll',{safe:true},function(err,collection){
 9           if(err){
10               console.log(err);
11           }   
12       }); 
13 
14     }else{
15         console.log(err);
16     }   
17 
18 });  

结果如图所示:

示例:

1 var mongodb = require('mongodb');

 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7       console.log('connect');
 8       db.createCollection('mycoll',{safe:true},function(err,collection){
 9           if(err){
10               console.log(err);
11           }   
12       }); 
13 
14     }else{
15         console.log(err);
16     }   
17 
18 });                                                                             

结果如图所示:

删除collection则使用dropCollection函数即可:

示例:

1 var mongodb = require('mongodb');
 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7       console.log('connect');
 8       db.dropCollection('mycoll',{safe:true},function(err,result){
 9          console.log(result);
10       }); 
11 
12     }else{
13         console.log(err);
14     }   
15

16 });

结果如图所示:

对collection进行增删改查

向collection添加数据使用insert函数

示例:

1 var mongodb = require('mongodb');
 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7       db.collection('mycoll',{safe:true},function(err,collection){
 8           var tmp1 = {title:'hello',number:1};
 9           collection.insert(tmp1,{safe:true},function(err,result){
10               console.log(result);
11           }); 
12     });
13     }else{
14         console.log(err);
15     }   
16 
17 });

结果如图:

对数据进行更新:

示例:

 1 var mongodb = require('mongodb');
 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {
 7       db.collection('mycoll',{safe:true},function(err,collection){
 8           collection.update({title:'hello'},{$set:{number:3}},{safe:true},function(err,result){
 9               console.log(result);
10           });
11 
12     }else{
13         console.log(err);
14     }
15 
16 });
17                                                                                                                     

结果如图所示:

对数据进行删除使用remove函数

示例:

1 var mongodb = require('mongodb');
 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {
 7       db.collection('mycoll',{safe:true},function(err,collection){
 8           collection.remove({title:'hello'},{safe:true},function(err,result){
 9               console.log(result);
10           });
11         
12     }else{
13         console.log(err);
14     }         
15                                 
16 });

结果如图:

如果remove没有任何的参数,则删除全部。

查找操作,查找操作有两个方法一个是find,一个是findOne

示例:

1 var mongodb = require('mongodb');

 2 var server = new mongodb.Server('localhost',27017,{auto_reconnect:true});
 3 var db = new mongodb.Db('mydb',server,{safe:true});
 4 db.open(function(err,db){
 5     if(!err)
 6     {   
 7       db.collection('mycoll',{safe:true},function(err,collection){
 8           var tmp1 = {title:'hello'};
 9           var tmp2 = {title:'world'};
10           collection.insert([tmp1,tmp2],{safe:true},function(err,result){
11               console.log(result);
12           }); 
13           collection.find().toArray(function(err,docs){
14               console.log('find');
15               console.log(docs);
16           }); 
17           collection.findOne(function(err,doc){
18               console.log('findOne');
19               console.log(doc);
20           }); 
21       });  

nodejs对mongodb数据库的增删改查操作(转载)相关推荐

  1. 利用koa实现mongodb数据库的增删改查

    概述 使用koa免不了要操纵数据库,现阶段流行的数据库是mongoDB,所以我研究了一下koa里面mongoDB数据库的增删改查,记录下来,供以后开发时参考,相信对其他人也有用. 源代码请看:我的gi ...

  2. 【接口测试】Day5-使用pymysql库对mysql数据库进行增删改查操作

    目录 今日目标 一.数据库介绍 二.数据库基本操作 1.安装 2.操作流程(重点) 1. 创建连接 2. 获取游标 3. 执行sql 4. 关闭游标 5. 关闭连接 3.数据准备 4.数据库基本操作 ...

  3. php修改数据库字段内容,php对数据库的增删改查操作

    在我看来数据库是个既复杂又高深莫测的东西,但百分之八十左右的程序员都不需要去精通他,对于我们前端开发来说,只要会数据库的增删改查语句就差不多了.首先我们来说说sql的增删改查语句. 一.增删改查 插入 ...

  4. 利用Mybatis对数据库进行增删改查操作

    文章目录 mybatis模糊查找 先来了解一下 #{}和${}的使用 parameterType和resultType的使用 selectOne和selectList的使用 mysql自增主键返回 方 ...

  5. JDBC-03:PreparedStatement如何实现对数据库的增删改查操作

    文章目录 一.使用PreparedStatement实现CRUD操作 (1)使用PreparedStatement实现增删改操作 1.PreparedStatement介绍 2.实现数据库的添加操作 ...

  6. Django数据库数据增删改查操作

    一. 无需实现model.py文件获取实例对象就能直接通过连接数据库进行数据的增删改查操作 # 连接数据库用于查询(查询单个或多个) def db_query(sql):# 打开数据库连接db = p ...

  7. JDBC中用控制台简单对数据库进行增删改查操作(IDEA.2023)

    文章目录 前言 一.首先是每个操作共用的操作大纲 1.注册驱动 2.创建连接 3.编写SQL语句结果,动态值的部分使用?代替 4.创建prepareStatement,并且传入SQL语句的结果 5.占 ...

  8. 欢迎来到Jsp编程课时十二——今天实现的目标是。@1将数据库的数据发送到浏览器。@2利用浏览器实现对数据库的增删改查操作。@3理解MVC三层架构的定义。

    完成项目会有以下的效果. JSP第二十课:Mvc+Mysql+Servlect+Jsp实现在浏览器上对数据库的增删改查. MVC全名是Model View Controller, 是 @@1模型(mo ...

  9. mongodb数据库的增删改查(有图有demo)

    名词注释 下面的截图中,有一些名词需要解释一下,方便理解和应用: cuckoo叫库名,也就是数据库的名字 users叫集合名,也就是colloction的名字 右侧带_id的一排排的, 那叫文档 而_ ...

最新文章

  1. Flex很可能会消失
  2. java 级联下拉列表_java 下拉框级联(年月日级联)
  3. mysql 查看表v空间自增涨_MySQL InnoDB表空间加密
  4. python 安装 Pyside 出现 “Failed to find the MSVC compiler version 10.0 on your system”
  5. [原创]在ObjectDataSource中使用自定义Web控件提供查询参数
  6. spring jdbc_Spring JDBC示例
  7. jquer同时选择多个不同的id执行同意操作
  8. Atitit 学习记忆理论 教育理论 教学培训 目录 1. 视觉优先理论 1 2. 心理学的“认知负荷理论 2 2.1. 双重编码理论 2 2.2. 艺术化 原理动画 3 2.3. 艾宾浩斯遗忘曲
  9. 【AI志愿超强攻略】中国高校人工智能专业最全院校排名课程对比
  10. windows安装配置jdk1.8
  11. 箭头小三角(向上或向下、两条边)--两种制作方法
  12. 腾讯qq的授权管理查看页面
  13. 亭子早期博客中16进制颜色值地址
  14. 华为机试——字符串压缩(stringZip)
  15. [Qt]使用QSS的扁平化风格的小作业—— 附源码
  16. c语言打开xls文件格式,Excel2017如何打开et格式文件?Excel2017打开.et文件的方法介绍...
  17. 金蝶cloud后台数据库表说明
  18. 前端开发学习及工具网站(持续更新)
  19. PHP队列服务打不开,执行队列服务问题
  20. mac安装jdk和maven以及环境配置

热门文章

  1. 一个路径下挂载(匹配)多个子组件
  2. CSS之创建等高列布局之一
  3. JQ trigger触发a标签点击事件
  4. 剑指offer--从尾到头打印链表
  5. 前端开发怎么用php,做web前端开发怎么样?
  6. 单独安装想要的office_安装OFFICE不再求人,最省心的方法
  7. 数据结构之单向环形列表解决josef问题
  8. beego——模板处理
  9. delphi dxBarManager 的dxBarEdit 输入问题
  10. $动态规划系列(2)——找零钱问题