js里调用mysql_在节点js中异步并等待MySQL调用

我对节点还很陌生,我刚刚了解了javascript中提供的async和await函数。我正在尝试在下面随附的代码段中实现此方法。以我的理解,数据库响应应该首先打印到控制台,然后“完成”,但是我无法使其正常工作。任何帮助将不胜感激。

也请尝试说明您所做的修复操作,因为我想了解我做错了什么。

var mysql = require("mysql");

const cTable = require('console.table');

var connection = mysql.createConnection({

host: "localhost",

port: 8889,

user: "root",

password: "root",

database: "testDB"

})

connection.connect((err, fields) => {

if (err) {

return console.log(err.code);

}

});

var displayDB = async () => {

connection.query('SELECT * FROM products', (err, resp) => {

if (err) {

return console.log(err.code);

} else {

table = [];

resp.forEach((product) => {

obj = {

'Product ID': product.productID,

'Category': product.category,

'Price': product.price,

'Stock': product.stockQuantity

}

table.push(obj)

})

console.table(table)

connection.end()

}

})

}

var test = async () => {

var x = await displayDB()

console.log('done')

}

test()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值