隨着JavaScript語言的快速發展,其功能愈來愈強大,能作的事情也愈來愈多。html
目前,web前端工程師可以利用NodeJS搭建服務,也成爲了愈來愈多互聯網公司對前端開發的硬性要求。前端
本文主要介紹基於NodeJS封裝的Express框架進行對MySQL關係數據庫的CURD(增刪改查)。node
這裏再也不贅述,戳這兒去安裝NodeJS環境:http://nodejs.cn/download/。mysql
安裝完成後,在終端分別輸入如下兩個命令:web
node -v //出現版本號便可 如:v12.18.3
npm -v //出現版本號便可 如:6.14.6
新建一個目錄,在目錄中建立一個js文件,例如curd.js。sql
在該目錄中打開終端,輸入如下命令,安裝Express和MySQL庫。數據庫
npm install mysql express --save //安裝 mysql 和 express 而且注入項目依賴
另外,須要創建數據庫,我這裏建了個名字叫elemsn的庫名,而且裏邊創建了一個數據表user。express
在user表中:npm
uid:int類型,主鍵自增。(表示序號)json
uname:varchar類型。(表示名字)
uage:int類型。(表示年齡)
打開curd.js,有如下代碼:
const mysql = require('mysql'); // 引入mysql模塊 const express = require("express"); // 引入express模塊 const app = express(); // 實例化express模塊 用app來表示 let con = mysql.createConnection({ // 配置mysql數據庫 host: 'localhost', // 主機名 port: '3306', // 默認端口 user: 'root', // 鏈接的名字 password: 'root', // 鏈接的密碼 database: 'elemsn' // 鏈接的數據庫 }); con.connect(); // 與數據庫創建鏈接 app.listen(8033, () => { // 監聽8033端口 console.log("8033啓動中..."); });
這樣一來,服務算是搭建好了,在終端輸入:
node curd.js
「curd」是個人js文件名稱,後邊的「.js」可省略。
按回車後,出現如下信息,就ok了。
注意:
在此以前,本人已經在user表中插入了兩條數據,以下圖:
//查詢數據 app.get('/select', function(req, res) { var sql = 'select * from user'; //sql查詢語句:查找user表中全部數據 con.query(sql, function(err, result) { //鏈接數據庫 傳入sql語句 回調函數獲得結果 try { res.send(result) //查詢結果響應給請求方 } catch (err) { console.log("查詢失敗"); } }); })
利用postman,查詢user表中全部的數據:
咱們能夠看到響應數據,經過解析json就能夠將數據渲染了。
//增長數據 app.post('/add', function(req, res) { var sql = 'insert into user set uname=? , uage=?'; // 這邊的"?"是SQL的模板語法 var params = [req.query.uname, req.query.uage] // 這邊的數組參數與上邊的"?"一一映射 con.query(sql, params, function(err, result) { try { res.send('增長數據成功'); } catch (err) { console.log('新增數據失敗'); } }); })
利用postman,給user表增長一個25歲的Joy:
而後user表中就多了一條咱們剛添加的數據。
//修改數據 app.put('/update', function(req, res) { var sql = 'update user set uname=?, uage=? where uid=?'; var params = [req.query.uname, req.query.uage, req.query.uid] con.query(sql, params, function(err) { try { res.send('修改數據成功'); } catch (err) { console.log('修改數據失敗'); } }); })
利用postman,將咱們剛剛添加的Joy年齡改成26歲:
也許表中有不止一條名叫Joy的數據,因此必須傳uid,經過主鍵來定位修改:
//刪除數據 app.delete('/delete', function(req, res) { var sql = 'delete from user where uid= ?' var params = [req.query.uid]; con.query(sql, params, function(err) { try { res.send('刪除數據成功'); } catch (err) { console.log('刪除數據失敗'); } }); })
利用postman,把Joy這條數據移除:
同理,刪除一條數據,必須用主鍵定位:
到此爲止,咱們完整進行了增刪改查。
注意:
增:通常用post請求。
刪:通常用delete請求。
改:通常用put請求。
查:通常用get請求。
但這只是建議,若是你想用get請求進行一整系列的增刪改查,必定是可行的,但並不推薦。