我正在编写一个在 mysql 数据库上插入和读取信息的脚本。我已经完成了在数据库上创建寄存器并工作的第一步,但是我在从数据库中读取数据时遇到了问题。
我有一个 main.ts 调用所有执行 select/insert 语句的函数,还有一个 dao.ts 与所有与数据库交互的函数。
这是我调用函数的代码:
const vehiclesDB = select('SELECT * FROM vehicles', con);
console.log(vehiclesDB);
这总是返回未定义。
这是执行 sql 语句的代码:
export const select = (statement: string, dbConnection: any) => {
const results = dbConnection.query(statement, function (err, res, fields) {
if (err) throw err;
return res;
});
return results;
}
如果我在 select 函数内的 res 变量上执行 console.log,我可以看到结果行。我尝试将结果变量设置为 select 函数的返回值,但我可以在 main.ts 上看到的是 db 连接详细信息。
这是我正在使用的通过节点与 mysql 交互的库: https ://github.com/mysqljs/mysql