首頁 > web前端 > js教程 > 主體

nodejs連接mongodb資料庫實作增刪改查

高洛峰
發布: 2016-12-03 09:15:36
原創
1329 人瀏覽過

準備

1.透過npm指令安裝mongodb

2.安裝mongodb資料庫

CRUD操作

在此之前應對MongoDB資料庫有所了解,知道它的一些增刪指令。

1.增加

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";
 
function insertData(db)
{
  var devices = db.collection('vip');
  var data = {"name":"node","age":22,"addr":"nb","addTime":new Date()};
  devices.insert(data,function(error, result){
    if(error)
    {
      console.log('Error:'+ error);
    }else{
 
      console.log(result.result.n);
    }
    db.close();
  });
}
 
  
MongoClient.connect(DB_URL, function(error, db){
  console.log('连接成功!');
  insertData(db);
});
登入後複製

2.查找

var mongodb = require('mongodb')
var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/chm'; 
 
var selectData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('vip');
 //查询数据
 var whereStr = {"name":'node'};
 collection.find(whereStr,function(error, cursor){
  cursor.each(function(error,doc){
    if(doc){
      //console.log(doc);
      if (doc.addTime) {
        console.log("addTime: "+doc.addTime);
      }
    }
  });
 
 });
 
}
 
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 selectData(db, function(result) {
  console.log(result);
  db.close();
 });
});
登入後複製

3.更新

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";
 
MongoClient.connect(DB_URL, function(error, db){
  console.log("连接成功!");
  updateData(db);
});
 
function updateData(db)
{
  var devices = db.collection('vip');
  var whereData = {"name":"node"}
  var updateDat = {$set: {"age":26}}; //如果不用$set,替换整条数据
  devices.update(whereData, updateDat, function(error, result){
    if (error) {
      console.log('Error:'+ error);
    }else{
      console.log(result);
    }
    db.close();
  });
}
登入後複製

4.刪除

var MongoClient = require('mongodb').MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";
 
MongoClient.connect(DB_URL, function(error, db){
  console.log("连接成功");
  deleteData(db);
});
 
function deleteData(db)
{
  var devices = db.collection('vip');
  var data = {"name":"node"};
  devices.remove(data, function(error, result){
    if (error) {
      console.log('Error:'+ error);
    }else{
      console.log(result.result.n);
    }
    db.close();
  })
}
登入後複製

儲存過程

中,透過db.eval(“預存程序ID()”);呼叫預存程序。


在程式碼中呼叫:

var MongoClient = require("mongodb").MongoClient;
var DB_URL = "mongodb://localhost:27017/chm";
 
MongoClient.connect(DB_URL, function(error,db){
  console.log("连接成功!");
  callProcess(db)
});
 
function callProcess(db)
{
  db.eval("get_vip_count()",function(error, result){
    if (error) {
      console.log(error);
    }else{
      console.log("count:"+result);
    }
    db.close();
  });
}
登入後複製

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板