欧克美食网
您的当前位置:首页使用Nodejs如何来操作MongoDB

使用Nodejs如何来操作MongoDB

来源:欧克美食网


这篇文章给大家介绍的文章内容是关于使用Nodejs如何来操作MongoDB,有很好的参考价值,希望可以帮助到有需要的朋友。

先用npm安装mongodb

npm install mongodb

安装成功后,继续在上面操作创建的库和表中操作

插入

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/wilsondb1'; 
var insertData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('tb2');
 //插入数据
 var data = [{"name":'wilson001',"age":21},{"name":'wilson002',"age":22}];
 collection.insert(data, function(err, result) { 
 if(err)
 {
 console.log('Error:'+ err);
 return;
 } 
 callback(result);
 });
}
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 insertData(db, function(result) {
 console.log(result);
 db.close();
 });
});

查询

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/wilsondb1'; 
var selectData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('tb2');
 //查询数据
 var whereStr = {"name":'wilson001'};
 collection.find(whereStr).toArray(function(err, result) {
 if(err)
 {
 console.log('Error:'+ err);
 return;
 } 
 callback(result);
 });
}
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 selectData(db, function(result) {
 console.log(result);
 db.close();
 });
});

修改

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/wilsondb1'; 
var updateData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('tb2');
 //更新数据
 var whereStr = {"name":'wilson001'};
 var updateStr = {$set: { "age" : 100 }};
 collection.update(whereStr,updateStr, function(err, result) {
 if(err)
 {
 console.log('Error:'+ err);
 return;
 } 
 callback(result);
 });
}
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 updateData(db, function(result) {
 console.log(result);
 db.close();
 });
});

删除

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/wilsondb1'; 
var delData = function(db, callback) { 
 //连接到表 
 var collection = db.collection('tb2');
 //删除数据
 var whereStr = {"name":'wilson001'};
 collection.remove(whereStr, function(err, result) {
 if(err)
 {
 console.log('Error:'+ err);
 return;
 } 
 callback(result);
 });
}
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 delData(db, function(result) {
 console.log(result);
 db.close();
 });
});

调用存储过程

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://localhost:27017/wilsondb1'; 
var invokeProcData = function(db, callback) { 
 //存储过程调用
 db.eval('get_tb2_count()', function(err, result) { 
 if(err)
 {
 console.log('Error:'+ err);
 return;
 } 
 callback(result);
 });
}
MongoClient.connect(DB_CONN_STR, function(err, db) {
 console.log("连接成功!");
 invokeProcData(db, function(result) {
 console.log(result);
 db.close();
 });
});
显示全文