溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js系列之如何連接DB

發(fā)布時間:2021-07-20 11:12:17 來源:億速云 閱讀:143 作者:小新 欄目:web開發(fā)

小編給大家分享一下Node.js系列之如何連接DB,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

背景

node.js,有人稱之為運行在服務器端的JavaScript。以往我們使用JavaScript時,都是依賴后端查詢數(shù)據(jù)庫并返回數(shù)據(jù),而JavaScript只需要展示即可。問題來了,就不能繞開后端直接查詢數(shù)據(jù)庫嗎?答案是肯定的。

關系型——以mysql操作為例

node.js提供了mysql操作的驅動(模塊),如果還未安裝,需要執(zhí)行 npm install mysql 命令來安裝。

//引入模塊
var mysql=require('mysql');

//定義連接對象connection
var connection=mysql.createConnection({
 host:'192.168.*.*',
 user:'root',
 password:'******',
 database:'DB'
});

//連接
connection.connect();

//執(zhí)行查詢測試
var sql='select * from sys_user';
connection.query(sql,function(err,result){
 if(err){
 console.log('[select error]-',err.message);
 return;
 }

 console.log('-----select-------');
 console.log(result);
 console.log('------------------------');
});

//關閉連接
connection.end();

部分查詢結果如下:

Node.js系列之如何連接DB

node.js連接mysql的其他增刪改操作就不一一展示了,和查詢操作類似,準備好sql語句,使用提供的響應的方法就ok了。

非關系型——以mongoDB為例

安裝驅動模塊

npm install mongodb

插入操作

var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR = 'mongodb://192.168.*.*:27017/runoob'; 


 var insertData = function(db, callback) { 
 // 連接到表 site
 var collection = db.collection('site');
 // 準備數(shù)據(jù)
 var data = [{"name":"Sherry","sex":"female","email":"xxxxx@163.com"},{"name":"Tom","sex":"male","email":"xxxx@163.com"}];
 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();
 });
});

執(zhí)行代碼:

Node.js系列之如何連接DB

可以看到插入日志

Node.js系列之如何連接DB

使用命令mongodb/bin/mongo進入mongo客戶端,可以看到剛剛插入的數(shù)據(jù)。

Node.js系列之如何連接DB

以上是“Node.js系列之如何連接DB”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI