新手上路node+mongodb

本文详细介绍了MongoDB的安装步骤,包括下载、解压、配置环境变量,并展示了在Mac上如何确保安装成功。同时,文章还指导了如何使用Node.js连接MongoDB数据库,进行数据的增删改查操作,以及通过Robo3T可视化工具实时查看结果。

​​​​​一:安装mongodb

官网下载:https://www.mongodb.com/try/download/enterprise

二:解压下载文件

三:将解压文件放入目标文件夹内

四:检查电脑上是否有.bash_profile配置文件

有配置文件:配置文件中加入

export PATH=/Users/xx/目标文件夹/bin:$PATH

无配置文件:输入命令行,新建.bash_profile文件,新建完成后添加上面配置信息。

cd ~ //进入目录
touch .bash_profile //新建
vim ~/.bash_profile //打开配置文件

五:检查是否安装成功,输入下面命令行,看到版本信息则安装成功

mongo -version

注意mac安装来源确认,点击允许打开

 

六:进入目标文件夹,根目录新建data文件,data文件夹内新建db文件夹 

 

七:启动mongo服务,输入下面命令行

mongo

八:安装mongodb可视化工具Robo 3T,搜索官网下载安装即可。 

 九:新建testnode文件夹(按自己需要改名字),创建简易node项目文件夹结构

 

十:新建db.js,安装mongodb

npm install mongodb -s

 十一:尝试连接mongo数据库,使用nodejs对数据库数据进行增删改查操作,db.js里面写入下面代码,放开注视,依次实验。

//引入mongodb模块,获得客户端对象
var MongoClient = require('mongodb').MongoClient;
//连接字符串
var DB_CONN_STR = 'mongodb://localhost:27017/config';
var dbName = 'config';

//定义函数表达式,用于操作数据库并返回结果
var insertData = function (db, callback) {
    //获得指定的集合 
    var collection = db.collection('users');
    //插入数据
    var data = [{
        _id: 7,
        "name": 'rose',
        "age": 21
    }, {
        _id: 8,
        "name": 'mark',
        "age": 22
    }];
    collection.insert(data, function (err, result) {
        //如果存在错误
        if (err) {
            console.log('Error:' + err);
            return;
        }
        //调用传入的回调方法,将操作结果返回
        callback(result);
    });
}
//定义函数表达式,用于操作数据库并返回结果
var updateData = function (db, callback) {
    //获得指定的集合 
    var collection = db.collection('users');
    //要修改数据的条件,>=10岁的用户
    var where = {
        age: {
            "$gte": 10
        }
    };
    //要修改的结果
    var set = {
        $set: {
            age: 95
        }
    };
    collection.updateMany(where, set, function (err, result) {
        //如果存在错误
        if (err) {
            console.log('Error:' + err);
            return;
        }
        //调用传入的回调方法,将操作结果返回
        callback(result);
    });
}

//定义函数表达式,用于操作数据库并返回结果
var findData = function (db, callback) {
    //获得指定的集合 
    var collection = db.collection('users');
    //要查询数据的条件,<=10岁的用户
    var where = {
        age: {
            "$lte": 10
        }
    };
    //要显示的字段
    var set = {
        name: 1,
        age: 1
    };
    collection.find(where, set).toArray(function (err, result) {
        //如果存在错误
        if (err) {
            console.log('Error:' + err);
            return;
        }
        //调用传入的回调方法,将操作结果返回
        callback(result);
    });
}

//定义函数表达式,用于操作数据库并返回结果
var removeData = function (db, callback) {
    //获得指定的集合 
    var collection = db.collection('users');
    //要删除数据的条件,_id>2的用户删除
    var where = {
        _id: {
            "$gt": 2
        }
    };
    collection.remove(where, function (err, result) {
        //如果存在错误
        if (err) {
            console.log('Error:' + err);
            return;
        }
        //调用传入的回调方法,将操作结果返回
        callback(result);
    });
}
MongoClient.connect(DB_CONN_STR, function (err, client) {
    console.log("连接成功!" + client);
    var db = client.db(dbName)
    //插入数据
    // insertData(db, function(result) {
    //     console.log(result);
    //     client.close();
    // });
    //更新数据
    // updateData(db, function(result) {
    //     //显示结果
    //     console.log(result);
    //     //关闭数据库
    //     client.close();
    // });
    // 查询数据
    findData(db, function(result) {
        //显示结果
        console.log(result);
        //关闭数据库
        client.close();
    });
    // 删除数据
    // removeData(db, function (result) {
    //     //显示结果
    //     console.log(result);
    //     //关闭数据库
    //     client.close();
    // });
});

十二:Robo 3T实时查看运行结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值