使用Express+Node.js對mysql進行增改查操作?
前言:
今天發(fā)的是Express對mysql進行增刪改操作的所有代碼,這個代碼還沒有完善好,都是一些基礎(chǔ)的增刪改查操作,有一些地方也寫上了注釋方便大家查看,還有更方便管理的方法,后續(xù)再給大家更新把。
最近要是有時間就會把文章寫出來給大家,希望想要學習的朋友都能學習順利。
server.js文件夾完整的代碼示例:
// 引入 express 框架
const express = require('express')
const mysql = require("mysql");
const bodyParser = require('body-parser');
// 創(chuàng)建實例
const app = express();
// 解析 application/json
app.use(bodyParser.json());
// // 解析 application/x-www-form-urlencoded
// app.use(bodyParser.urlencoded());
app.all('*', function(req, res, next) {
res.header('Access-Control-Allow-Origin',
'*'); //*表示可以跨域任何域名都行(包括直接存在本地的html文件)出于安全考慮最好只設置 你信任的來源也可以填域名表示只接受某個域名
res.header('Access-Control-Allow-Headers', 'X-Requested-With,Content-Type'); //可以支持的消息首部列表
res.header('Access-Control-Allow-Methods', 'PUT,POST,GET,DELETE,OPTIONS'); //可以支持的提交方式
res.header('Content-Type', 'application/json;charset=utf-8'); //響應頭中定義的類型
next();
});
const connection = mysql.createConnection({ //建立一個連接參數(shù)方法
host: 'localhost', //數(shù)據(jù)庫地址
port: '3306', //端口號
user: 'root', //用戶名
password: 'root', //密碼
database: 'test' //數(shù)據(jù)庫名稱
});
//用參數(shù)與數(shù)據(jù)庫進行連接
// connection.connect();
let str = '';
connection.connect(); //打開連接
// connection.end()//關(guān)閉連接 如果關(guān)閉連接第二次請求數(shù)據(jù)庫連接會失敗
const getBanner = (table) => { //查詢數(shù)據(jù)
return new Promise(function(resolve, reject) {
let sql = `SELECT * FROM ${table}`;
try {
connection.query(sql, (err, data) => {
if (err) {
reject(err)
} else {
resolve(data)
}
})
} catch (e) {
console.log(e);
}
})
}
const addBanner = (list) => { //增加數(shù)據(jù)
// console.log(Object.values(list));
list = Object.values(list) //將對象轉(zhuǎn)成數(shù)組
return new Promise(function(resolve, reject) {
// const sql = 'UPDATE `user` SET ? WHERE id = ?'
// //若sql語句中包含多個?占位符,第二個實參必須傳遞一個數(shù)組,并一一對應
// conn.query(sql,[user,user.id],(err,result) => {}
let addSql = `INSERT INTO banner(name,url) VALUES (?,?)`;
try {
connection.query(addSql, list, (err, result) => {
if (err) {
reject(err)
} else {
result = {
code: 200,
msg: '增加成功'
};
resolve(result)
}
})
} catch (e) {
console.log(e);
}
})
}
const deleteBanner = (list) => { //刪除數(shù)據(jù)
return new Promise(function(resolve, reject) {
let deleteSql = `delete from banner where name='${list.name}'`;
try {
connection.query(deleteSql, (err, result) => {
if (err) {
reject(err)
} else {
result = {
code: 200,
msg: '刪除成功'
};
// console.log(result);
resolve(result)
}
})
} catch (e) {
console.log(e);
}
})
}
const updateBanner = (list) => { //修改數(shù)據(jù)
return new Promise(function(resolve, reject) {
let updateSql = `update banner set ? where id=${list.id}`;
try {
connection.query(updateSql,list.data, (err, result) => {
if (err) {
reject(err)
} else {
result = {
code: 200,
msg: '修改成功'
};
// console.log(result);
resolve(result)
}
})
} catch (e) {
console.log(e);
}
})
}
//2.發(fā)送請求(查詢)
// var insert = `INSERT INTO table_name (name,url )VALUES(${name},${url});`
app.get('/', (req, res) => {
res.send('express啟動成功端口號3011');
})
app.post('/addbanner', (req, res) => { //增加
addBanner(req.body).then(re => {
console.log(re);
res.send(re)
})
})
app.post('/deletebanner', (req, res) => { //刪除
deleteBanner(req.body).then(re => {
// console.log(re);
res.send(re)
})
})
app.post('/updatebanner', (req, res) => { //修改
updateBanner(req.body).then(re => {
console.log(re);
res.send(re)
})
})
app.post('/select', (req, res) => { //查詢某表數(shù)據(jù)
getBanner(req.body.table).then(re => {
res.send(re);
})
})
// 監(jiān)聽端口
app.listen(3011, () => {
console.log("服務已經(jīng)啟動,3011 端口監(jiān)聽中...");
})到此這篇關(guān)于使用Express+Node.js對mysql進行增改查操作 的文章就介紹到這了,更多相關(guān)mysql增改查 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- node.js中koa和express的差異對比
- Node.js中Express框架使用axios同步請求(async+await)實現(xiàn)方法
- node.js使用express-jwt報錯:expressJWT?is?not?a?function解決
- Node.js使用express寫接口的具體代碼
- Node.js?express中的身份認證的實現(xiàn)
- node.js三個步驟實現(xiàn)一個服務器及Express包使用
- Node.js中Express框架的使用教程詳解
- node.js+express留言板功能實現(xiàn)示例
- node.js使用express-fileupload中間件實現(xiàn)文件上傳
- Node.js+express+socket實現(xiàn)在線實時多人聊天室
- Express框架實現(xiàn)簡單攔截器功能示例
相關(guān)文章
Express + Session 實現(xiàn)登錄驗證功能
本文主要介紹在 Express 框架中,如何使用 Session 來實現(xiàn)用戶登錄身份驗證。對express session實現(xiàn)登錄驗證相關(guān)知識,感興趣的朋友一起看看吧2017-09-09
利用node.js爬取指定排名網(wǎng)站的JS引用庫詳解
最近在學習node.js爬蟲,由于 nodejs 強大的異步特性,讓我們可以輕松以異步高并發(fā)去爬取網(wǎng)站,下面這篇文章主要給大家介紹了關(guān)于利用node.js爬取指定排名網(wǎng)站的JS引用庫的相關(guān)資料,需要的朋友可以參考下。2017-07-07

