在node中使用MonoDB实现增删改查

在node中使用MonoDB实现增删改查

步骤一:

创建数据库;
步骤二:

node中使用

1.下载monodb


由于在整个node项目中都会使用故在package.json中配置
npm install mongodb --save

2.使用:


公共步骤:

//1.导入模块
var mongodb = require('mongodb');
//2.设置连接路径
/**确保开启了mongodb数据服务
*/
var url = 'mongodb://127.0.0.1:27017/vue2';//其中vue2是你创建的数据库的名字。
//3.创建客户端(mongod相当于服务器,监听27017端口。 mongo相当于客户端,连接端口号开启数据库)var MongoClient = mongodb.MongoClient;
数据库操作:

 // 1. 插入数据,和终端命令一致

MongoClient.connect(url, function (err, db) {
  if (err) {
    throw new Error('连接失败');
  }
  /* 回调函数中的result参数返回的是当前插入的这条数据的结果,ops键对应的就是插入的数据,相当于条件查询的结果*/
  db.collection('heros').insert({ name: '张飞', gender: '男', age: 23 }, function (err, result) {
      if (err) {
        throw new Error('插入数据失败');
      }
      console.log(result);
      // 3. 关闭链接。
      db.close();
    });   //插入多条使用collection.insertMany()
});

2.查询

//2.1.连接数据库
MongoClient.connect(url, function (err, db) {
  if (err) {
    throw new Error('连接失败');
  }
 // 查询所有
  db.collection('heros').find().toArray(function (err, docs) {
    if (err) {
      throw new Error('查询数据失败');
    }
    console.log(docs);
  });
  // 按条件查询
  db.collection('heros').find({name: '张飞'}).toArray(function (err, docs) {
    if (err) {
      throw new Error('查询数据失败');
    }
    console.log(docs);
  });
});

3.更新数据

//3.1.连接数据库
MongoClient.connect(url, function (err, db) {
  if (err) {
    throw new Error('连接失败');
  }
  //3.2.更新数据  updateOne方法只能更新找到的第一条记录
  db.collection('heros').updateOne({name: '张飞'}, {
    $set: {
      age: 20
    }
  }, function (err, result) {
    if (err) {
      throw new Error('更新失败');
    }
    console.log(result);
  });
  //3.3.更新多条数据  1.update方法 2.设置允许修改多条数据multi属性为true(默认为false)
  db.collection('heros').update({name: '张飞'}, {
    $set: {
      age: 20
    }
  },{multi:true}, function (err, result) {
    if (err) {
      throw new Error('更新失败');
    }
    console.log(result);
  });
});

4.删除数据

//4.1.连接数据库
MongoClient.connect(url, function (err, db) {
  if (err) {
    throw new Error('连接失败');
  }
  db.collection('heros').deleteMany({name: '鲁班'}, function (err, result) {
    if (err) {
      throw new Error('删除失败');
    }
    console.log(result);
  });
  //如果想要删除多个使用deleteMany()方法(相当于更新的multi,会删除所有找到的记录)
});

操作数据库增删改查一般分为三步

1.连接数据库

2.执行增删改查工作

3.关闭数据库

一般只有在改变数据库的数据时才需要关闭,增删改查中查询操作没有改变数据库数据可以省略这一步
关闭数据库的作用:
(1)节省性能 
(2)多线程同时操作数据库时一个线程中打开未关闭,另一个现场打开则会报错
理论上来讲,nodejs时单线程的,所以不关闭也不会有什么问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值