nodejs連接mongodb數(shù)據(jù)庫(kù)實(shí)現(xiàn)增刪改查
準(zhǔn)備
1.通過(guò)npm命令安裝mongodb
2.安裝mongodb數(shù)據(jù)庫(kù),這里不詳細(xì)介紹了,安裝網(wǎng)址:http://www.dbjr.com.cn/article/82522.htm
CRUD操作
在此之前應(yīng)對(duì)MongoDB數(shù)據(jù)庫(kù)有所了解,知道它的一些增刪查改命令。
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');
//查詢(xún)數(shù)據(jù)
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,替換整條數(shù)據(jù)
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();
})
}
存儲(chǔ)過(guò)程
在mongodb中創(chuàng)建存儲(chǔ)過(guò)程
所有存儲(chǔ)過(guò)程都存放在db.system.js中,通過(guò)db.eval(“存儲(chǔ)過(guò)程ID()”);調(diào)用存儲(chǔ)過(guò)程。
在代碼中調(diào)用:
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();
});
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- nodejs對(duì)mongodb數(shù)據(jù)庫(kù)的增加修刪該查實(shí)例代碼
- Nodejs實(shí)現(xiàn)的操作MongoDB數(shù)據(jù)庫(kù)功能完整示例
- nodejs實(shí)現(xiàn)連接mongodb數(shù)據(jù)庫(kù)的方法示例
- 使用Nodejs連接mongodb數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼
- 詳解nodejs操作mongodb數(shù)據(jù)庫(kù)封裝DB類(lèi)
- NodeJS連接MongoDB數(shù)據(jù)庫(kù)時(shí)報(bào)錯(cuò)的快速解決方法
- NodeJs Express框架操作MongoDB數(shù)據(jù)庫(kù)執(zhí)行方法講解
相關(guān)文章
利用n 升級(jí)工具升級(jí)Node.js版本及在mac環(huán)境下的坑
這篇文章主要介紹了利用n 升級(jí)工具升級(jí)Node.js的方法,以及通過(guò)網(wǎng)友的測(cè)試發(fā)現(xiàn)在mac環(huán)境下利用n工具升級(jí)不成功導(dǎo)致node.js不可用的解決方法,有需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-02-02
node鏈接mongodb數(shù)據(jù)庫(kù)的方法詳解【阿里云服務(wù)器環(huán)境ubuntu】
這篇文章主要介紹了node鏈接mongodb數(shù)據(jù)庫(kù)的方法,結(jié)合實(shí)例形式分析了nodejs基于阿里云服務(wù)器環(huán)境ubuntu下實(shí)現(xiàn)連接MongoDB數(shù)據(jù)庫(kù)的相關(guān)操作技巧,需要的朋友可以參考下2019-03-03
Node.js實(shí)現(xiàn)注冊(cè)郵箱激活功能的方法示例
現(xiàn)在很多網(wǎng)站都需要有注冊(cè)郵箱激活的功能,本篇文章主要介紹了Node.js實(shí)現(xiàn)注冊(cè)郵箱激活功能的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03

