正确处理mysql查询上的async/await



我正在尝试执行一个mysql查询,异步地将一个值分配给稍后在代码中使用的常量。

到目前为止,我拥有的是:

const plan_free = await con1.promise().query("SELECT stripe_price1 FROM funzioni WHERE titolo='SmartBanca'")
.then( ([rows,fields]) => {
return rows[0]['stripe_price1'];
})
.catch(console.log)
.then( () => con1.end());
console.log("Plan_free: "+ plan_free);

但是plan_free返回[object object]。我确信我已经接近目标了,但我没有意识到我仍然做错了什么。

编辑:添加以下行:

plan_free1 = JSON.stringify(plan_free);
console.log("Plan_free: "+ plan_free1);

我看到了plan_free的以下内容:

Plan_free:{quot;_events":{}_eventsCount":0;下一个":null}

这实际上还没有达到我想要的目标。

好吧,我终于成功了。

var plain_free='';
await con1.promise().query("SELECT stripe_price1 FROM funzioni WHERE titolo='SmartBanca'")
.then( ([rows,fields]) => {
plan_free = rows[0]['stripe_price1'];
return plan_free;
})
.catch(console.log)
.then( () => con1.end());

console.log("Plan_free: "+ plan_free);

通过这种方式,我能够从数据库中获取值,并将其分配给节点中的一个变量。这将在以后的代码中使用,而无需在查询的回调中嵌套它。

相关内容

  • 没有找到相关文章

最新更新