时间:2021-07-01 10:21:17 帮助过:25人阅读
‘use strict‘; const mysql = require(‘mysql‘); var local = true var pool // 创建连接池 if (local) { pool = mysql.createPool({ connectionLimit: 50, host: ‘localhost‘, user: ‘root‘, password: ‘root‘, database: ‘crawl‘, multipleStatements: true //是否允许执行多条sql语句 }); } //将结果已对象数组返回 var row = (sql, ...params) => { return new Promise(function (resolve, reject) { pool.getConnection(function (err, connection) { if (err) { reject(err); return; } connection.query(sql, params, function (error, res) { connection.release(); if (error) { reject(error); return; } resolve(res); }); }); }); }; //返回一个对象 var first = (sql, ...params) => { return new Promise(function (resolve, reject) { pool.getConnection(function (err, connection) { if (err) { reject(err); return; } connection.query(sql, params, function (error, res) { connection.release(); if (error) { reject(error); return; } resolve(res[0] || null); }); }); }); }; //返回单个查询结果 var single = (sql, ...params) => { return new Promise(function (resolve, reject) { pool.getConnection(function (err, connection) { if (err) { reject(err); return; } connection.query(sql, params, function (error, res) { connection.release(); if (error) { reject(error); return; } for (let i in res[0]) { resolve(res[0][i] || null); return; } resolve(null); }); }); }); } //执行代码,返回执行结果 var execute = (sql, ...params) => { return new Promise(function (resolve, reject) { // 获取连接 pool.getConnection(function (err, connection) { if (err) { reject(err); return; } // 操作数据库 connection.query(sql, params, function (error, res) { // 释放 connection.release(); if (error) { reject(error); return; } resolve(res); }); }); }); } //模块导出 module.exports = { ROW: row, FIRST: first, SINGLE: single, EXECUTE: execute } /*连接mysql*/ function connectToMysql() { var connection = mysql.createConnection({ host: ‘‘, user: ‘‘, password: ‘‘, database: ‘‘ }); connection.connect(); //查询 connection.query(‘SELECT * FROM user;‘, function (err, rows, fields) { if (err) throw err; console.log(‘The solution is: ‘, rows[0]); }); //关闭连接 connection.end(); }
node封装mysql模块
标签:导出 rom node UI nec null 实现 tip cat