Node連接MySQL並封裝其增刪改查的實現代碼

Node連接Mysql

說到node,可能大傢會想到MOngoDB作為數據庫,這裡將會介紹node與mysql的連接,並分享瞭封裝好的實例代碼,在項目開發中可直接使用。

安裝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:連接的服務器
  • user:數據庫用戶名
  • password:設置的MySQL密碼
  • database: 要連接的數據庫名

常用的SQL語句

具體的使用這裡不做詳細說明,包括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);
})

結束連接

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

這兩種都行,第二種是強制結束。

封裝

說瞭這麼多,感覺操作起來還是挺簡單的。在實際開發中,我們想要操作起來更方便,那就讓我們自己封裝一下來使用。直接上代碼:

封裝好的代碼

1.數據庫配置文件

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

2.封裝、暴露方法

let mysql = require('mysql');//引入mysql模塊
var databaseConfig = require('./mysql.config');  //引入數據庫配置模塊中的數據
 
//向外暴露方法
module.exports = {
    query : function(sql,params,callback){
        //每次使用的時候需要創建鏈接,數據操作完成之後要關閉連接
        var connection = mysql.createConnection(databaseConfig);        
        connection.connect(function(err){
            if(err){
                console.log('數據庫鏈接失敗');
                throw err;
            }
         //開始數據操作
         //傳入三個參數,第一個參數sql語句,第二個參數sql語句中需要的數據,第三個參數回調函數
        connection.query( sql, params, function(err,results,fields ){
           if(err){
                console.log('數據操作失敗');
                throw err;
            }
            //將查詢出來的數據返回給回調函數
            callback && callback(results, fields);
            //results作為數據操作後的結果,fields作為數據庫連接的一些字段
            //停止鏈接數據庫,必須再查詢語句後,要不然一調用這個方法,就直接停止鏈接,數據操作就會失敗
             connection.end(function(err){
                  if(err){
                      console.log('關閉數據庫連接失敗!');
                      throw err;
                  }
              });
           });
       });
    }
};

3.演示實例

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

結束

想要使用的朋友,可以直接把封裝好的兩個文件copy到項目中,改一下配置就可以使用瞭,大大提高開發效率。

到此這篇關於Node連接MySQL並封裝其增刪改查的實現代碼的文章就介紹到這瞭,更多相關Node連接MySQL增刪改查內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: