• [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(); }); });

    结果

  • 相关阅读:
    FileItem类的常用方法
    spring mvc(注解)上传文件的简单例子
    Linux下安装Tomcat服务器和部署Web应用
    防止表单重复提交的几种策略
    Rancher 2.0 学习目录
    Prometheus 学习目录
    k8s学习目录
    python之路——目录
    Mac OS X生成RSA公钥和私钥
    Django设置 DEBUG=False后静态文件无法加载解决
  • 原文地址:https://www.cnblogs.com/catbrother/p/9411156.html
Copyright © 2020-2023  润新知