node连接MongoDB

这篇博客详细介绍了如何使用Node.js连接MongoDB,包括下载MongoDB、运行MongoDB服务、创建数据库、创建集合以及数据库的基本操作,如插入、查询、更新和删除数据。
下载MongoDB
  • 下载mongdb
  • 进入
    • cd /usr/local
  • 解压
    • sudo tar -zxvf mongodb-osx-x86_64-4.0.7
  • 重命名为 mongodb 目录
    • sudo mv mongodb-osx-x86_64-3.4.2 mongodb
  • 把 MongoDB 的二进制命令文件目录(安装目录/bin)添加到 PATH 路径中:
    • export PATH=/usr/local/mongodb/bin:$PATH
运行mongoDB
  • 首先我们创建一个数据库存储目录 /data/db
    -sudo mkdir -p /data/db
  • 启动 mongodb,默认数据库目录即为/data/db
    • sudo mongod
  • 再打开一个终端进入执行以下命令:
    • $ cd /usr/local/mongodb/bin
    • $ ./mongo
创建数据库
  • $ cnpm install mongodb
  • 创建连接
    • 要在 MongoDB 中创建一个数据库,首先我们需要创建一个 MongoClient 对象,然后配置好指定的 URL 和 端口号。
    • 如果数据库不存在,MongoDB 将创建数据库并建立连接。
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/runoob";
    
    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
     if (err) throw err;
    console.log("数据库已创建!");
    db.close();
    });
    
创建集合
  • 使用 createCollection() 方法来创建集合:
    var MongoClient = require('mongodb').MongoClient;
    var url = 'mongodb://localhost:27017/runoob';
    MongoClient.connect(url, { useNewUrlParser: true }, function (err, db) {
    	if (err) throw err;
    	 console.log('数据库已创建');
    	var dbase = db.db("runoob");
    	dbase.createCollection('site', function (err, res) {
        if (err) throw err;
        console.log("创建集合!");
        db.close();
     });
    });
    
数据库的操作
  • 插入数据
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";
    
    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
    if (err) throw err;
    var dbo = db.db("runoob");
    var myobj = { name: "分享数据库", url: "www.runoob" };
    dbo.collection("site").insertOne(myobj, function(err, res) {
        if (err) throw err;
        console.log("文档插入成功");
        db.close();
    });
    });
    

在这里插入图片描述

  • 查询数据
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";
    
    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
    if (err) throw err;
    var dbo = db.db("runoob");
    dbo.collection("site"). find({}).toArray(function(err, result) { // 返回集合中所有数据
        if (err) throw err;
        console.log(result);
        db.close();
    });
    });
    
  • 更新数据
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";
    
    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
    if (err) throw err;
    var dbo = db.db("runoob");
    var whereStr = {"name":'分享数据库'};  // 查询条件
    var updateStr = {$set: { "url" : "https://www.runoob.com" }};
    dbo.collection("site").updateOne(whereStr, updateStr, function(err, res) {
        if (err) throw err;
        console.log("文档更新成功");
        db.close();
    });
    });
    

在这里插入图片描述

  • 删除数据
    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";
    
    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
    if (err) throw err;
    var dbo = db.db("runoob");
    var whereStr = {"name":'分享数据库'};  // 查询条件
    dbo.collection("site").deleteOne(whereStr, function(err, obj) {
        if (err) throw err;
        console.log("文档删除成功");
        db.close();
    });
    });
    
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值