tribedb
Version:
Unlimited expansion MySQL cluster storage system
41 lines (37 loc) • 1.09 kB
JavaScript
/**
*
* update
*
*/
const mysql = require('mysql');
const pool = require('./pool.js');
/**
* 修改数据
*/
exports.update = function(table, data, where)
{
if(typeof data == 'object'){
let datastr = [];
for(let i in data){
let val = typeof data[i] == 'number' ? data[i] : mysql.escape(data[i]);
datastr.push('`'+i+'`='+val);
}
if( ! datastr.length ){
return resolve({}); // 返回
}
data = datastr.join(', ');
}
return new Promise(function (resolve, reject) {
pool.conn(table, {write:1}, function(err, conn){
if(err) return reject(err);
where = where ? ' WHERE '+where : '';
let sqlstr = "UPDATE `"+table+"` SET "+data+where;
// console.log(sqlstr);
conn.query(sqlstr, function(err, rows){
conn.release(); // 必须释放回连接池!
if(err) return reject(err);
resolve(rows); // 返回
});
});
})
};