Node.js連接mongodb實例代碼
前面介紹了node.js操作mysql以及redis的內(nèi)容,這里繼續(xù)學(xué)習(xí)操作mongodb的內(nèi)容。
安裝驅(qū)動
安裝命令
cnpm install mongodb
安裝成功
數(shù)據(jù)庫操作
因為mongodb是文檔類型的數(shù)據(jù)庫,與mysql有很大不同,mongodb會自動創(chuàng)建數(shù)據(jù)庫和集合,并不需要提前進行手動創(chuàng)建。
Insert
var MongoClient = require("mongodb").MongoClient; var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db"; var insertData = function (db, callback) { //連接數(shù)據(jù)表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(); }); });
結(jié)果
查詢數(shù)據(jù)
var MongoClient = require("mongodb").MongoClient; var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db"; //查詢 var queryData = function (db, callback) { //連接數(shù)據(jù)表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(); }); });
結(jié)果
更新數(shù)據(jù)
var MongoClient = require("mongodb").MongoClient; var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db"; //查詢 var updateData = function (db, callback) { //連接數(shù)據(jù)表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(); }); });
結(jié)果
刪除數(shù)據(jù)
var MongoClient = require("mongodb").MongoClient; var DB_CONN_STR = "mongodb://sa:sa@localhost:27017/test_db"; //刪除 var deleteData = function (db, callback) { //連接數(shù)據(jù)表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(); }); });
結(jié)果
總結(jié)
到這里就簡單實現(xiàn)了node.js操作mongodb的實例。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Node.js應(yīng)用設(shè)置安全的沙箱環(huán)境
這篇文章主要介紹了Node.js應(yīng)用設(shè)置安全的沙箱環(huán)境的方法以及注意事項,對此有需要的朋友可以參考學(xué)習(xí)下。2018-04-04vscode調(diào)試node.js的實現(xiàn)方法
這篇文章主要介紹了vscode調(diào)試node.js的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03基于Express實現(xiàn)遞歸遍歷文件和CRUD操作
在現(xiàn)代的?Web?應(yīng)用開發(fā)中,文件管理是一個常見而重要的需求,所以本文就來講講如何利用?Express?框架,在遞歸遍歷文件之后實現(xiàn)強大的?CRUD?操作,構(gòu)建一個功能完善的文件管理系統(tǒng),感興趣的可以了解一下2023-06-06node.js用fs.rename強制重命名或移動文件夾的方法
本篇文章主要介紹了node.js用fs.rename強制重命名或移動文件夾的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12Express URL跳轉(zhuǎn)(重定向)的實現(xiàn)方法
Express是一個基于Node.js實現(xiàn)的Web框架,其響應(yīng)HTTP請求的response對象中有兩個用于URL跳轉(zhuǎn)方法res.location()和res.redirect(),使用它們可以實現(xiàn)URL的301或302重定向。2017-04-04