[Node.js]连接mongodb

摘要

前面介绍了node.js操作mysql以及redis的内容,这里继续学习操作mongodb的内容。

安装驱动

安装命令

cnpm install mongodb

安装成功

数据库操作

 因为mongodb是文档类型的数据库,与mysql有很大不同,mongodb会自动创建数据库和集合,并不需要提前进行手动创建。

Insert

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
var insertData = function (db, callback) {
    //连接数据表my_firsrt_collection
    var collection = db.collection("my_firsrt_collection");
    var data = [{ "name": "wolfy1", "age": 20 }, { "name": "wolfy2", "age": 20 }]
    collection.insert(data, function (err, result) {
        if (err) {
            console.log("error:" + err);
            return;
        };
        callback(result);
    });
};
  MongoClient.connect(DB_CONN_STR, function (err, db) {
        if (err) {
            console.log("连接失败:" + err);
            return;
        };
        console.log("连接成功");
        insertData(db,function(result){
            console.log(result);
            db.close();
        });
    });

结果

查询数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
//查询 var queryData = function (db, callback) { //连接数据表my_firsrt_collection
var collection = db.collection("my_firsrt_collection"); //查询条件 var where = { "name": "wolfy1" };
collection.find(where).toArray(
function (err, result) { if (err) { console.log("error:" + err); return; };
callback(result); }); };
MongoClient.connect(DB_CONN_STR,
function (err, db) {
if (err) {
console.log(
"连接失败:" + err);
return;
};
console.log(
"连接成功");
queryData(db,
function (result) { console.log(result); db.close(); }); });

结果

更新数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
//查询
var updateData = function (db, callback) {
    //连接数据表my_firsrt_collection
    var collection = db.collection("my_firsrt_collection");
    //查询条件
    var where = { "name": "wolfy1" };
    var updateStr={$set:{"address":"http://www.cnblogs.com/wolf-sun/"}};
    collection.update(where,updateStr,function (err, result) {
        if (err) {
            console.log("error:" + err);
            return;
        };
        callback(result);
    });
};
MongoClient.connect(DB_CONN_STR, function (err, db) {
    if (err) {
        console.log("连接失败:" + err);
        return;
    };
    console.log("连接成功");
    updateData(db, function (result) {
        console.log(result);
        db.close();
    });
});

结果

删除数据

var MongoClient = require("mongodb").MongoClient;
var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db";
//删除
var deleteData = function (db, callback) {
    //连接数据表my_firsrt_collection
    var collection = db.collection("my_firsrt_collection");
    //查询条件
    var where = { "name": "wolfy1" };
    collection.remove(where, function (err, result) {
        if (err) {
            console.log("error:" + err);
            return;
        };
        callback(result);
    });
};
MongoClient.connect(DB_CONN_STR, function (err, db) {
    if (err) {
        console.log("连接失败:" + err);
        return;
    };
    console.log("连接成功");
    deleteData(db, function (result) {
        console.log(result);
        db.close();
    });
});

结果

总结

到这里就简单实现了node.js操作mongodb的实例。

原文地址:https://www.cnblogs.com/wolf-sun/p/6943965.html