我正在使用mysql从节点运行mysql
我观察到一种奇怪的行为,即无法识别7月6日的数据。
以下是代码:
var mysql = require('mysql');
var dbconn = mysql.createConnection({
host: 'xx.xxx.xxx.xxx',
user: 'xxxxxx',
password: 'xxxxxx',
database: 'xxxxxx'
});
connection.connect(function (err) {
if (err) {
console.log(err);
}
queryString = "select max(createdon) max_date from gate";
DBSelect(dbconn, queryString, [], function (success, msgObj) {
console.log(' ');
console.log('// dbconn.config.dateStrings', dbconn.config.dateStrings);
console.log('msgObj', msgObj.results[0].max_date);
dbconn.config.dateStrings = true;
console.log(' ');
DBSelect(dbconn, queryString, [], function (success, msgObj) {
console.log('// dbconn.config.dateStrings', dbconn.config.dateStrings);
console.log('msgObj', msgObj.results[0].max_date);
})
})
});
function DBSelect(dbObject, queryString, values, callback) {
dbObject.query({
sql: queryString,
timeout: 40000, // 40s
},
values,
function (error, results, fields) {
if (error !== null) {
callback(false, error);
}
else {
callback(true, {
results: results,
fields: fields
});
}
}
)
}
这是我得到的输出
// dbconn.config.dateStrings false
msgObj 2018-07-05T13:48:58.000Z
// dbconn.config.dateStrings true
msgObj 2018-07-05 19:18:58
但是当我从Navicat(类似于MySQL Workbench的MySQL客户端)执行相同的查询时,我会得到正确的响应
无法识别问题,请提出建议。