亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Node連接MySQL并封裝其增刪改查的實(shí)現(xiàn)代碼

 更新時(shí)間:2021年12月27日 10:12:39   作者:imHere·  
本文主要介紹了Node連接MySQL并封裝其增刪改查的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Node連接Mysql

說(shuō)到node,可能大家會(huì)想到MOngoDB作為數(shù)據(jù)庫(kù),這里將會(huì)介紹node與mysql的連接,并分享了封裝好的實(shí)例代碼,在項(xiàng)目開(kāi)發(fā)中可直接使用。

安裝Mysql模塊

npm install mysql

連接Mysql

    const mysql = require('mysql');
    
    let connection = mysql.createConnection({
        host : 'localhost',
        user : 'root', 
        password : 'password',
        database : 'test'
    });
 
connection.connect(function(err) {
  if (err) {
    console.error('連接失敗: ' + err.stack);
    return;
  }
 
  console.log('連接成功 id ' + connection.threadId);
});
  • host:連接的服務(wù)器
  • user:數(shù)據(jù)庫(kù)用戶(hù)名
  • password:設(shè)置的MySQL密碼
  • database: 要連接的數(shù)據(jù)庫(kù)名

常用的SQL語(yǔ)句

具體的使用這里不做詳細(xì)說(shuō)明,包括select、insert、update、delete等語(yǔ)句。

Node操作Mysql

查詢(xún)

connection.query('SELECT * FROM t_user WHERE username = "whg"', (err, results, fields) => {
    if(err){
        console.log(err);
    }
    console.log(results);
})

添加

connection.query('INSERT INTO t_user(username, pass) VALUES(?, ?)',['whg', '123'], (err, results) => {
    if(err){
        console.log(err);
    }
    console.log(results);
})

刪除

connection.query('DELETE FROM t_user  WHERE id = 1', (err, results) => {
    if(err){
        console.log(err);
    }
    console.log(results);
})

更新

connection.query('UPDATE t_user SET pass = "321" WHERE username = "whg"', (err, results) => {
    if(err){
        console.log(err);
    }
    console.log(results);
})

結(jié)束連接

connection.end(function(err) {
  
});
connection.destroy();

這兩種都行,第二種是強(qiáng)制結(jié)束。

封裝

說(shuō)了這么多,感覺(jué)操作起來(lái)還是挺簡(jiǎn)單的。在實(shí)際開(kāi)發(fā)中,我們想要操作起來(lái)更方便,那就讓我們自己封裝一下來(lái)使用。直接上代碼:

封裝好的代碼

1.數(shù)據(jù)庫(kù)配置文件

//配置鏈接數(shù)據(jù)庫(kù)參數(shù)
module.exports = {
    host : 'localhost',
    port : 3306,//端口號(hào)
    database : 'nodetest',//數(shù)據(jù)庫(kù)名
    user : 'root',//數(shù)據(jù)庫(kù)用戶(hù)名
    password : '123456'//數(shù)據(jù)庫(kù)密碼
};

2.封裝、暴露方法

let mysql = require('mysql');//引入mysql模塊
var databaseConfig = require('./mysql.config');  //引入數(shù)據(jù)庫(kù)配置模塊中的數(shù)據(jù)
 
//向外暴露方法
module.exports = {
    query : function(sql,params,callback){
        //每次使用的時(shí)候需要?jiǎng)?chuàng)建鏈接,數(shù)據(jù)操作完成之后要關(guān)閉連接
        var connection = mysql.createConnection(databaseConfig);        
        connection.connect(function(err){
            if(err){
                console.log('數(shù)據(jù)庫(kù)鏈接失敗');
                throw err;
            }
         //開(kāi)始數(shù)據(jù)操作
         //傳入三個(gè)參數(shù),第一個(gè)參數(shù)sql語(yǔ)句,第二個(gè)參數(shù)sql語(yǔ)句中需要的數(shù)據(jù),第三個(gè)參數(shù)回調(diào)函數(shù)
        connection.query( sql, params, function(err,results,fields ){
           if(err){
                console.log('數(shù)據(jù)操作失敗');
                throw err;
            }
            //將查詢(xún)出來(lái)的數(shù)據(jù)返回給回調(diào)函數(shù)
            callback && callback(results, fields);
            //results作為數(shù)據(jù)操作后的結(jié)果,fields作為數(shù)據(jù)庫(kù)連接的一些字段
            //停止鏈接數(shù)據(jù)庫(kù),必須再查詢(xún)語(yǔ)句后,要不然一調(diào)用這個(gè)方法,就直接停止鏈接,數(shù)據(jù)操作就會(huì)失敗
             connection.end(function(err){
                  if(err){
                      console.log('關(guān)閉數(shù)據(jù)庫(kù)連接失??!');
                      throw err;
                  }
              });
           });
       });
    }
};

3.演示實(shí)例

var db=require('../model/mysql.js');
// 查詢(xún)實(shí)例
db.query('select * from t_user', [],function(result,fields){
    console.log('查詢(xún)結(jié)果:');
    console.log(result);
});
//添加實(shí)例
var  addSql = 'INSERT INTO websites(username,password) VALUES(?,?)';
var  addSqlParams =['咕嚕先森', '666'];
db.query(addSql,addSqlParams,function(result,fields){
    console.log('添加成功')
})

結(jié)束

想要使用的朋友,可以直接把封裝好的兩個(gè)文件copy到項(xiàng)目中,改一下配置就可以使用了,大大提高開(kāi)發(fā)效率。

到此這篇關(guān)于Node連接MySQL并封裝其增刪改查的實(shí)現(xiàn)代碼的文章就介紹到這了,更多相關(guān)Node連接MySQL增刪改查內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Node.js之readline模塊的使用詳解

    Node.js之readline模塊的使用詳解

    這篇文章主要介紹了Node.js之readline模塊的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • nodejs處理圖片的幾種方法總結(jié)(使用sharp、jimp及webconvert)

    nodejs處理圖片的幾種方法總結(jié)(使用sharp、jimp及webconvert)

    這篇文章主要給大家介紹了關(guān)于nodejs處理圖片的幾種方法,文中介紹的方法分別是sharp、jimp及webconvert,在開(kāi)發(fā)過(guò)程中我們有時(shí)候需要對(duì)圖片進(jìn)行處理,給一個(gè)圖片添加水印、多個(gè)圖片合成為一圖片等操作,需要的朋友可以參考下
    2023-12-12
  • Node 升級(jí)到最新穩(wěn)定版的方法分享

    Node 升級(jí)到最新穩(wěn)定版的方法分享

    今天小編就為大家分享一篇Node 升級(jí)到最新穩(wěn)定版的方法分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • node.js中的path.extname方法使用說(shuō)明

    node.js中的path.extname方法使用說(shuō)明

    這篇文章主要介紹了node.js中的path.extname方法使用說(shuō)明,本文介紹了path.extname的方法說(shuō)明、語(yǔ)法、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 詳解如何讓Express支持async/await

    詳解如何讓Express支持async/await

    本篇文章主要介紹了詳解如何讓Express支持async/await,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • Node.js+express+socket實(shí)現(xiàn)在線實(shí)時(shí)多人聊天室

    Node.js+express+socket實(shí)現(xiàn)在線實(shí)時(shí)多人聊天室

    這篇文章主要為大家詳細(xì)介紹了Node.js+express+socket實(shí)現(xiàn)在線實(shí)時(shí)多人聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 從Node.js事件觸發(fā)器到Vue自定義事件的深入講解

    從Node.js事件觸發(fā)器到Vue自定義事件的深入講解

    這篇文章主要給大家介紹了關(guān)于從Node.js事件觸發(fā)器到Vue自定義事件的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 使用Jasmine和Karma對(duì)AngularJS頁(yè)面程序進(jìn)行測(cè)試

    使用Jasmine和Karma對(duì)AngularJS頁(yè)面程序進(jìn)行測(cè)試

    這篇文章主要介紹了使用Jasmine和Karma對(duì)AngularJS頁(yè)面程序進(jìn)行測(cè)試的方法,以Node.js為環(huán)境,非常適合JavaScript的全棧開(kāi)發(fā)時(shí)使用,需要的朋友可以參考下
    2016-03-03
  • node解析修改nginx配置文件操作實(shí)例分析

    node解析修改nginx配置文件操作實(shí)例分析

    這篇文章主要介紹了node解析修改nginx配置文件操作,結(jié)合實(shí)例形式分析了node.js使用nginx-conf解析修改nginx配置文件的相關(guān)操作技巧,需要的朋友可以參考下
    2019-11-11
  • Node.js如何通過(guò)http調(diào)用外部接口

    Node.js如何通過(guò)http調(diào)用外部接口

    這篇文章主要介紹了Node.js如何通過(guò)http調(diào)用外部接口問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評(píng)論