express +node 实现登录mysql数据库

时间:2022-10-25 05:12:17

首先,创建一个新的express项目,然后在项目下新建一个文件夹DB,在DB中新建一个文件DBConfig.js

module.exports =
{
mysql: {
host:
'127.0.0.1',
user:
'root',
password:
'****',
database:
'****',
port:
3306
}
};

之后在主文件ConnectDB.js中进行数据库连接

var express = require('express');
var router = express.Router();
// 导入MySQL模块
var mysql = require('mysql');
var dbConfig = require('../DB/DBConfig');
var SQL = require('../DB/DBsql');
// 使用DBConfig.js的配置信息创建一个MySQL连接池
var pool = mysql.createPool( dbConfig.mysql );

router.post(
'/status/block', function(req, res, next){
// 从连接池获取连接
pool.getConnection(function(err, connection) {
res.header(
"Access-Control-Allow-Origin", "*");
var param = req.body; // 获取前台页面传过来的参数
var ids = param.id;
var TABLE_NAME = 'uxdata';
var condition="where `id`='"+ids[0]+"' ";
for(let i=1;i<ids.length;i++){
condition
+=(" or `id`= '"+ids[i]+"'");
}
var sql = "UPDATE "+TABLE_NAME+" SET `status` = '"+param.setStatus +"' "+condition;
connection.query(sql,
function(err, result) {
// 以json形式,把操作结果返回给前台页面
responseJSON(res, result);
// 释放连接
connection.release();
});
});
});

上面是我个人的数据库查询情况,应根据自己的数据库内容进行修改。express中是创建了应该数据库的连接池,然后每次需要连接数据库时,调用连接池的getConnection方法进行连接,对数据库内容进行操作,可采用query方法进行。

测试部分代码:

$(document).ready(function(){

var startDate = new Date();
startDate.setDate(startDate.getDate()
-365);
startDate
= startDate.Format("yyyy-MM-dd");
var endDate = new Date().Format("yyyy-MM-dd");
$(
"button").click(function(){
$.post(
"http://127.0.0.1:3000/list/delete",
{
page:
1,
pageSize:
5,
startDate:startDate,
endDate:endDate,
srcName:{
state0:
false,
state1:
false,
state2:
true,
state3:
true,
state4:
false,
state5:
true,
},
// id:3,
setStatus:6,
// type:"version",
// orderBy:"DESC"
prodline:1,
id:[
1,3]
},
function(data,status){
alert(
"数据:" + (JSON.stringify(data)) + "\n状态:" + status);
});
});
});

Fromat之前的随笔有记录。