資訊內(nèi)容
mongodb怎么關(guān)閉數(shù)據(jù)庫(kù)連接?
gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
mongodb連接數(shù)據(jù)庫(kù)關(guān)閉數(shù)據(jù)庫(kù)連接的方法:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
1、首先我們需要 在包中安裝 mongodb, 使用命令: npm install mongodb; 在安裝包后,我們需要引用該包;如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
var mongo = require('mongodb');在Node.js中,當(dāng)需要連接Mongodb數(shù)據(jù)庫(kù)時(shí),首先需要?jiǎng)?chuàng)建一個(gè)Mongodb數(shù)據(jù)庫(kù)所在服務(wù)器的Server對(duì)象,作用是指定需要連接的MongoDB數(shù)據(jù)庫(kù)所在的服務(wù)器。gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
2、創(chuàng)建Server對(duì)象,如下命令:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
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ù);gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
auto_reconnect: 該屬性為布爾值,當(dāng)屬性值為true時(shí),在客戶(hù)端與服務(wù)器連接過(guò)程中發(fā)生錯(cuò)誤時(shí)自動(dòng)重建連接,默認(rèn)為false。gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
3、創(chuàng)建數(shù)據(jù)庫(kù)為DB對(duì)象;gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
在MongoDB服務(wù)器對(duì)象創(chuàng)建成功后,需要?jiǎng)?chuàng)建一個(gè)代表MongoDB數(shù)據(jù)庫(kù)的DB對(duì)象,創(chuàng)建方法如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
var db = new mongo.Db(databaseName, server, [options]);databaseName: 該參數(shù)是必須的,用于指定需要連接的數(shù)據(jù)庫(kù)名;
server: 用于指定該數(shù)據(jù)庫(kù)所在的服務(wù)器。
options為一個(gè)對(duì)象,參數(shù)可選的,具體的參數(shù)自己百度,這邊介紹一些常用的參數(shù)。gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
safe: 是一個(gè)布爾值,當(dāng)屬性值為true時(shí),使用getLastError命令執(zhí)行數(shù)據(jù)的存取操作,該命令返回存取操作的執(zhí)行結(jié)果,默認(rèn)為false;gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
4、數(shù)據(jù)庫(kù)連接gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
在Db對(duì)象創(chuàng)建后,需要使用對(duì)象的open方法執(zhí)行數(shù)據(jù)庫(kù)的鏈接操作,該方法使用如下所示:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
db.open(callback);callback 是一個(gè)回調(diào)函數(shù),用于指定執(zhí)行數(shù)據(jù)庫(kù)連接操作后返回的回調(diào)函數(shù),回調(diào)函數(shù)指定方法如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
function(err, db) { }在該回調(diào)函數(shù)中,使用二個(gè)參數(shù),第一個(gè)參數(shù)為鏈接數(shù)據(jù)庫(kù)失敗時(shí)拋出的錯(cuò)誤對(duì)象,第二個(gè)參數(shù)為一個(gè)Db對(duì)象,代表鏈接成功的數(shù)據(jù)庫(kù),當(dāng)數(shù)據(jù)庫(kù)連接失敗時(shí),該參數(shù)值為null;gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
5、關(guān)閉數(shù)據(jù)庫(kù)gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
當(dāng)一個(gè)數(shù)據(jù)庫(kù)不再需要使用時(shí)候,可以使用數(shù)據(jù)庫(kù)對(duì)象的close方法關(guān)閉數(shù)據(jù)庫(kù),該方法如下所示:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
db.close([forceClose], [callback]);forceClose 參數(shù)值為一個(gè)布爾值,當(dāng)該參數(shù)值為true時(shí),強(qiáng)制關(guān)閉該數(shù)據(jù)庫(kù),關(guān)閉數(shù)據(jù)庫(kù)后,不可再使用open方法打開(kāi)該數(shù)據(jù)庫(kù)。
當(dāng)參數(shù)值為false,不強(qiáng)制關(guān)閉該數(shù)據(jù)庫(kù),可以使用該數(shù)據(jù)庫(kù)對(duì)象的open方法打開(kāi)該數(shù)據(jù)庫(kù)。gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
callback 為一個(gè)函數(shù),用于指定關(guān)閉數(shù)據(jù)庫(kù)連接操作后返回的回調(diào)函數(shù)。該回調(diào)函數(shù)指定如下所示:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
function (err) {}該回調(diào)函數(shù)有一個(gè)參數(shù)值,表示的是為鏈接數(shù)據(jù)庫(kù)失敗時(shí)拋出的錯(cuò)誤對(duì)象。gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
6、監(jiān)聽(tīng)數(shù)據(jù)庫(kù)的close事件gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
當(dāng)數(shù)據(jù)庫(kù)關(guān)閉時(shí),觸發(fā)數(shù)據(jù)庫(kù)的對(duì)象的close事件,可以通過(guò)監(jiān)聽(tīng)數(shù)據(jù)庫(kù)對(duì)象的close事件并指定回調(diào)函數(shù)的方法指定當(dāng)關(guān)閉數(shù)據(jù)庫(kù)操作執(zhí)行結(jié)束時(shí)需要執(zhí)行的處理,如下代碼:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
function(err, db) {}該回調(diào)有2個(gè)參數(shù),第一個(gè)參數(shù)為關(guān)閉數(shù)據(jù)庫(kù)失敗時(shí)拋出的錯(cuò)誤對(duì)象,第二個(gè)參數(shù)值為成功關(guān)閉的數(shù)據(jù)庫(kù)對(duì)象,當(dāng)關(guān)閉數(shù)據(jù)庫(kù)失敗時(shí)該參數(shù)值為null.gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
下面是鏈接數(shù)據(jù)庫(kù)的簡(jiǎn)單demo,代碼如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
package.json 代碼如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
{ "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, 代碼如下:gte少兒編程網(wǎng)-Scratch_Python_教程_免費(fèi)兒童編程學(xué)習(xí)平臺(tái)
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ù)庫(kù)連接'); db.close(); } }); db.on('close', function(err, db) { if (err) { throw err; } else { console.log('成功關(guān)閉數(shù)據(jù)庫(kù)連接'); } });
- 上一篇
mongodb安裝目錄在哪里?
簡(jiǎn)介情景:從官網(wǎng):點(diǎn)擊打開(kāi)鏈接下載了mongodb-win32-x86_64-2.6.12-signed.msi文件后,右鍵安裝,各種Next后,沒(méi)有選擇路徑,就安裝結(jié)束了!!任務(wù)管理器里面沒(méi)有,服務(wù)里面沒(méi)有,只在卸載程序里面有。處理辦法:1.一般都下載在C:ProgramFiles或者C:Prog
- 下一篇
python如何做excel自動(dòng)化
簡(jiǎn)介python做excel自動(dòng)化的方法:首先安裝python工具包;然后從指定文件路徑讀取excel表格,進(jìn)行一定操作;接著保存到另一個(gè)excel文件;最終調(diào)用【excel_update】方法即可。相關(guān)免費(fèi)學(xué)習(xí)推薦:python視頻教程python做excel自動(dòng)化的方法:一、工具包1、xlrd:從E