Я пытаюсь выполнить SELECT для подсчета, если запись существует, а затем обновить ее, если запись отсутствует, вместо этого я вставлю ее в базу данных, так что это тривиальная концепция. Я использовал два разных способа написания этого, оба дали мне странный результат:
МЕТОД ОДИН
основной файл приложения
var res = '';
db.GetRecordset(my_valid_sql, res, function (res){
console.log('Main procedure: ' + res.lenght); //never happen
});
мой mysql файл обработчика
GetRecordset: function (req, res) {
con.query(req, function (err, res, fields) {
console.log("Total Records:- " + res.length); //by my sql this will return 1
if (err) throw err;
});
Так что с этим методом у меня нет ответа от моей функции, поэтому любой код, который я ввожу в месте журнала «Основная процедура» никогда не будет выполнена.
СПОСОБ ДВУХ
основной файл приложения
var res = '';
db.GetRecordset(my_valid_sql, res);
console.log(res.lenght); //returns UNDEFINED
мой sql файл обработчика
GetRecordset: function (req, res) {
con.query(req, function (err, res, fields) {
console.log("Total Records:- " + res.length); //this is happening BEFORE the previous UNDEFINED console log
if (err) throw err;
});