創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
10年積累的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有賀州免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。不懂mongodb關(guān)閉數(shù)據(jù)庫連接的方法?其實(shí)想解決這個(gè)問題也不難,下面讓小編帶著大家一起學(xué)習(xí)怎么去解決,希望大家閱讀完這篇文章后大所收獲。
mongodb連接數(shù)據(jù)庫關(guān)閉數(shù)據(jù)庫連接的方法:
1、首先我們需要 在包中安裝 mongodb, 使用命令: npm install mongodb; 在安裝包后,我們需要引用該包;如下:
var mongo = require('mongodb');
在Node.js中,當(dāng)需要連接Mongodb數(shù)據(jù)庫時(shí),首先需要?jiǎng)?chuàng)建一個(gè)Mongodb數(shù)據(jù)庫所在服務(wù)器的Server對(duì)象,作用是指定需要連接的MongoDB數(shù)據(jù)庫所在的服務(wù)器。
2、創(chuàng)建Server對(duì)象,如下命令:
var server = new mongo.Server(host, port, [options]);
參數(shù)host: 是指定服務(wù)器所在的地址;
參數(shù)port:是指定服務(wù)器的端口號(hào)。
options參數(shù)值是一個(gè)對(duì)象,用于指定服務(wù)器需要選用的一些選項(xiàng),具體的包含哪些對(duì)象可以自己百度下;這邊介紹一下最常用的參數(shù);
auto_reconnect: 該屬性為布爾值,當(dāng)屬性值為true時(shí),在客戶端與服務(wù)器連接過程中發(fā)生錯(cuò)誤時(shí)自動(dòng)重建連接,默認(rèn)為false。
3、創(chuàng)建數(shù)據(jù)庫為DB對(duì)象;
在MongoDB服務(wù)器對(duì)象創(chuàng)建成功后,需要?jiǎng)?chuàng)建一個(gè)代表MongoDB數(shù)據(jù)庫的DB對(duì)象,創(chuàng)建方法如下:
var db = new mongo.Db(databaseName, server, [options]);
databaseName: 該參數(shù)是必須的,用于指定需要連接的數(shù)據(jù)庫名;
server: 用于指定該數(shù)據(jù)庫所在的服務(wù)器。
options為一個(gè)對(duì)象,參數(shù)可選的,具體的參數(shù)自己百度,這邊介紹一些常用的參數(shù)。
safe: 是一個(gè)布爾值,當(dāng)屬性值為true時(shí),使用getLastError命令執(zhí)行數(shù)據(jù)的存取操作,該命令返回存取操作的執(zhí)行結(jié)果,默認(rèn)為false;
4、數(shù)據(jù)庫連接
在Db對(duì)象創(chuàng)建后,需要使用對(duì)象的open方法執(zhí)行數(shù)據(jù)庫的鏈接操作,該方法使用如下所示:
db.open(callback);
callback 是一個(gè)回調(diào)函數(shù),用于指定執(zhí)行數(shù)據(jù)庫連接操作后返回的回調(diào)函數(shù),回調(diào)函數(shù)指定方法如下:
function(err, db) { }
在該回調(diào)函數(shù)中,使用二個(gè)參數(shù),第一個(gè)參數(shù)為鏈接數(shù)據(jù)庫失敗時(shí)拋出的錯(cuò)誤對(duì)象,第二個(gè)參數(shù)為一個(gè)Db對(duì)象,代表鏈接成功的數(shù)據(jù)庫,當(dāng)數(shù)據(jù)庫連接失敗時(shí),該參數(shù)值為null;
5、關(guān)閉數(shù)據(jù)庫
當(dāng)一個(gè)數(shù)據(jù)庫不再需要使用時(shí)候,可以使用數(shù)據(jù)庫對(duì)象的close方法關(guān)閉數(shù)據(jù)庫,該方法如下所示:
db.close([forceClose], [callback]);
forceClose 參數(shù)值為一個(gè)布爾值,當(dāng)該參數(shù)值為true時(shí),強(qiáng)制關(guān)閉該數(shù)據(jù)庫,關(guān)閉數(shù)據(jù)庫后,不可再使用open方法打開該數(shù)據(jù)庫。
當(dāng)參數(shù)值為false,不強(qiáng)制關(guān)閉該數(shù)據(jù)庫,可以使用該數(shù)據(jù)庫對(duì)象的open方法打開該數(shù)據(jù)庫。
callback 為一個(gè)函數(shù),用于指定關(guān)閉數(shù)據(jù)庫連接操作后返回的回調(diào)函數(shù)。該回調(diào)函數(shù)指定如下所示:
function (err) {}
該回調(diào)函數(shù)有一個(gè)參數(shù)值,表示的是為鏈接數(shù)據(jù)庫失敗時(shí)拋出的錯(cuò)誤對(duì)象。
6、監(jiān)聽數(shù)據(jù)庫的close事件
當(dāng)數(shù)據(jù)庫關(guān)閉時(shí),觸發(fā)數(shù)據(jù)庫的對(duì)象的close事件,可以通過監(jiān)聽數(shù)據(jù)庫對(duì)象的close事件并指定回調(diào)函數(shù)的方法指定當(dāng)關(guān)閉數(shù)據(jù)庫操作執(zhí)行結(jié)束時(shí)需要執(zhí)行的處理,如下代碼:
function(err, db) {}
該回調(diào)有2個(gè)參數(shù),第一個(gè)參數(shù)為關(guān)閉數(shù)據(jù)庫失敗時(shí)拋出的錯(cuò)誤對(duì)象,第二個(gè)參數(shù)值為成功關(guān)閉的數(shù)據(jù)庫對(duì)象,當(dāng)關(guān)閉數(shù)據(jù)庫失敗時(shí)該參數(shù)值為null.
下面是鏈接數(shù)據(jù)庫的簡單demo,代碼如下:
package.json 代碼如下:
{ "name": "mdb", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "mongodb": "^2.2.33" } }
在項(xiàng)目中的根目錄下新建一個(gè) app.js, 代碼如下:
const mongo = require('mongodb'); const Server = mongo.Server; const Db = mongo.Db; const server = new Server('localhost', '27017', { auto_reconnect: true }); const db = new Db('dataDb', server, { safe: true }); db.open(function(err, db) { if (err) { throw err; } else { console.log('成功建立數(shù)據(jù)庫連接'); db.close(); } }); db.on('close', function(err, db) { if (err) { throw err; } else { console.log('成功關(guān)閉數(shù)據(jù)庫連接'); } });
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享mongodb關(guān)閉數(shù)據(jù)庫連接的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
本文標(biāo)題:mongodb關(guān)閉數(shù)據(jù)庫連接的方法-創(chuàng)新互聯(lián)
本文來源:http://www.rwnh.cn/article42/dgsehc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、軟件開發(fā)、網(wǎng)站維護(hù)、Google、ChatGPT、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容