最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

Node連接Mysql

說到node,可能大家會(huì)想到MOngoDB作為數(shù)據(jù)庫(kù),這里將會(huì)介紹node與mysql的連接,并分享了封裝好的實(shí)例代碼,在項(xiàng)目開發(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ù)用戶名
  • password:設(shè)置的MySQL密碼
  • database: 要連接的數(shù)據(jù)庫(kù)名

常用的SQL語句

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

Node操作Mysql

查詢

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é)束。

封裝

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

封裝好的代碼

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ù)用戶名
    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;
            }
         //開始數(shù)據(jù)操作
         //傳入三個(gè)參數(shù),第一個(gè)參數(shù)sql語句,第二個(gè)參數(shù)sql語句中需要的數(shù)據(jù),第三個(gè)參數(shù)回調(diào)函數(shù)
        connection.query( sql, params, function(err,results,fields ){
           if(err){
                console.log('數(shù)據(jù)操作失敗');
                throw err;
            }
            //將查詢出來的數(shù)據(jù)返回給回調(diào)函數(shù)
            callback && callback(results, fields);
            //results作為數(shù)據(jù)操作后的結(jié)果,fields作為數(shù)據(jù)庫(kù)連接的一些字段
            //停止鏈接數(shù)據(jù)庫(kù),必須再查詢語句后,要不然一調(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');
// 查詢實(shí)例
db.query('select * from t_user', [],function(result,fields){
    console.log('查詢結(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)目中,改一下配置就可以使用了,大大提高開發(fā)效率。

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

相關(guān)文章

  • Linux系統(tǒng)中利用node.js提取Word(doc/docx)及PDF文本的內(nèi)容

    Linux系統(tǒng)中利用node.js提取Word(doc/docx)及PDF文本的內(nèi)容

    這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)中利用node.js提取Word(doc/docx)及PDF文本的內(nèi)容,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面跟著小編來一起看看吧。
    2017-06-06
  • Nodejs如何進(jìn)行性能監(jiān)控和分析優(yōu)化

    Nodejs如何進(jìn)行性能監(jiān)控和分析優(yōu)化

    Node.js應(yīng)用可能因?yàn)楦卟l(fā)、內(nèi)存泄漏、CPU密集型任務(wù)等原因?qū)е滦阅芟陆?影響用戶體驗(yàn)甚至系統(tǒng)穩(wěn)定性,通過性能監(jiān)控和分析,我們可以及時(shí)發(fā)現(xiàn)潛在問題,并針對(duì)性地進(jìn)行優(yōu)化,確保系統(tǒng)正常運(yùn)行且具備良好的性能表現(xiàn)
    2024-06-06
  • Node.js實(shí)現(xiàn)登錄注冊(cè)功能

    Node.js實(shí)現(xiàn)登錄注冊(cè)功能

    這篇文章主要為大家詳細(xì)介紹了Node.js實(shí)現(xiàn)登錄注冊(cè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • windows實(shí)現(xiàn)npm和cnpm安裝步驟

    windows實(shí)現(xiàn)npm和cnpm安裝步驟

    這篇文章主要介紹了windows實(shí)現(xiàn)npm和cnpm安裝步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • node.js中g(shù)runt和gulp的區(qū)別詳解

    node.js中g(shù)runt和gulp的區(qū)別詳解

    這篇文章主要介紹了node.js中g(shù)runt和gulp的區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • 淺談Node.js 子進(jìn)程與應(yīng)用場(chǎng)景

    淺談Node.js 子進(jìn)程與應(yīng)用場(chǎng)景

    這篇文章主要介紹了淺談Node.js 子進(jìn)程與應(yīng)用場(chǎng)景,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • win7下安裝配置node.js+express開發(fā)環(huán)境

    win7下安裝配置node.js+express開發(fā)環(huán)境

    windows7下安裝nodejs及框架express,從誕生至今一直被熱捧,筆者最近也裝了個(gè)環(huán)境打算了解一下。安裝步驟簡(jiǎn)單比較簡(jiǎn)單,這里分享給大家,希望大家能夠喜歡。
    2015-12-12
  • node.js中的console.info方法使用說明

    node.js中的console.info方法使用說明

    這篇文章主要介紹了node.js中的console.info方法使用說明,本文介紹了console.info的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • Node 升級(jí)到最新穩(wěn)定版的方法分享

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

    今天小編就為大家分享一篇Node 升級(jí)到最新穩(wěn)定版的方法分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Nodejs實(shí)現(xiàn)微信分賬的示例代碼

    Nodejs實(shí)現(xiàn)微信分賬的示例代碼

    這篇文章主要介紹了Nodejs實(shí)現(xiàn)微信分賬的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01

最新評(píng)論

大悟县| 和田县| 黔南| 沂南县| 平南县| 巫溪县| 绿春县| 陇南市| 平利县| 木兰县| 洞头县| 武邑县| 泽普县| 高要市| 巧家县| 兴仁县| 漳平市| 苏尼特左旗| 卢龙县| 鸡泽县| 太康县| 额济纳旗| 三都| 新邵县| 丰宁| 澄迈县| 清新县| 岢岚县| 德阳市| 临海市| 噶尔县| 深圳市| 泾川县| 吕梁市| 绍兴县| 沙田区| 泌阳县| 得荣县| 滁州市| 华坪县| 若羌县|