javascript - SQlite 在 NodeJS 中导致未定义的问题
问题描述
我对看似教科书的 SQlite 用法示例有疑问:
下面的代码
const db_client = new sqlite3.Database(HISTORY_DB, (err) => {
if (err) {
console.error(err.message, '## ERROR ##');
return;
}
console.log('Connected to the SQlite DB');
});
const current_hour = new Date().getHours();
const sql = `SELECT value FROM history where hour = ${current_hour}`;
const getSql = async (sql) => {
await db_client.get(sql, [], (err, row) => {
if (err) {
return console.error(err.message);
}
console.log(row.value, 'FIRST');
return parseInt(row.value);
})
};
console.log(await getSql(sql), 'SECOND');
由于某种原因,我无法获得 sql 响应的值。我尝试了几种方法,但它始终未定义,但 console.log 有效。我想不明白。
控制台日志粘贴在下面:
undefined SECOND
Connected to the SQlite DB
287439002531265 FIRST
解决方案
推荐阅读
- python - 在类 __init__ 中使用 Argparse
- javascript - React hooks useState 与 props 解构失败
- c - 监视文件内容而不循环
- python - 背包初学者python
- javascript - 单击 select2 下拉菜单时获取更改框消息
- python - 多线程 - 另一个线程中的函数被多次调用
- xamarin - Xamarin 表单中的弹出窗口
- sql - 如何在 SQL 查询中绑定字符串中的变量?
- python - 执行“pip install virtualenv p1”时出错。它完美地安装了 virtualenv,但是在收集 p1 时产生了错误
- python - 如果特定行发生更改或其他情况如何退出脚本