|
@@ -0,0 +1,48 @@
|
|
|
+const mysql = require('mysql')
|
|
|
+const fs = require("fs");
|
|
|
+const configFile = fs.readFileSync('./config.json');
|
|
|
+const globalConfig = JSON.parse(configFile)
|
|
|
+const shipTestConfig = globalConfig['ship-test'][globalConfig['ship-test']['version']]
|
|
|
+const db_config = shipTestConfig.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
|
|
|
+}
|