【发布时间】:2020-03-09 21:21:01
【问题描述】:
我目前正在使用 node.js 与我的数据库进行通信。我遇到了一个问题,我想在异步数据库查询继续之前等待它。
我尝试了许多来自互联网的示例,但我似乎无法找到方法或问题所在。发生的情况是mysql查询后,不等待返回值,就直接进入下一行。
这是我的代码:
//Connection with database
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "justcall"
});
console.log("before insert");
function queryPromise(str){
return new Promise((resolve, reject) => {
con.query(str, (err, result, fields) => {
if(err) reject(err);
resolve(result);
})
})
}
async function run(){
let answer = await queryPromise("INSERT INTO calllog (userId, callId, timeCalled, callDuration, status, callType) VALUES ('27', '33', '2019-11-13 22:30:20', '00:00:01', '1', '1')");
console.log(answer);
}
run();
console.log("after insert");
【问题讨论】:
标签: javascript mysql node.js asynchronous async-await