const mysql = require('mysql') const fs = require("fs"); const configFile = fs.readFileSync('./config.json'); const globalConfig = JSON.parse(configFile) const db_config = globalConfig['ship-test'].db // 进行数据库交互 const sqlHandle = (sql, values) => { let connect = mysql.createConnection(db_config) // 开始链接数据库 connect.connect(function (err) { if (err) { console.log(`mysql连接失败: ${err}!`) } else { console.log('mysql连接成功!') } }) // 返回一个Promise承诺对象 return new Promise((resolve, reject) => { connect.query(sql, values, (err, result) => { if (err) { reject(err) } else { // 此处需要将返回数据转为JSON再转回来,否则原数据不为任何数据类型 let res = JSON.parse(JSON.stringify(result)) console.log('执行:', sql) console.log('参数:', values) console.log('结果:', res) closeMysql(connect) resolve(res) } }); }) } // 查询成功后关闭mysql const closeMysql = (connect) => { connect.end((err) => { if (err) { console.log(`mysql关闭失败:${err}!`) } else { console.log('mysql关闭成功!') } }) } // 导出方法 module.exports = { sqlHandle }