【发布时间】:2018-11-01 04:11:00
【问题描述】:
我想依次调用多个 sql 查询。 我已尝试使用以下代码,但出现超时错误:
exports.handler = function (event, context, callback) {
getNumber()
.then(result1 => {
// Use result1
return getNumber1(); // (A)
})
.then(result2 => { // (B)
console.log(result2);
callback(null, "OK");
})
.catch(error => {
console.log(error);
callback(null, "OK");
});
};
function getNumber() {
return new Promise(function(resolve, reject) {
connection.query("SELECT 1+1 as test ", (error, data) => {
if (error) {
reject(error);
} else {
resolve(data);
}
});
});
}
function getNumber1() {
return new Promise(function(resolve, reject) {
connection.query("SELECT 1+2 as test ", (error, data) => {
if (error) {
reject(error);
} else {
resolve(data);
}
});
});
}
这里我收到“任务在 3.00 秒后超时”错误。 所以任何人都可以帮助我同步调用connection.query。
【问题讨论】:
-
你能检查它是否适用于单个查询吗?
-
@Ashan,单查询,你的意思是调用 'getNumber().then(....).catch(....) ?
-
是的。它有效吗?只想检查是否可以从 Lambda 访问数据库。
-
@Ashan,我通过为 lambda 函数执行日志添加图像来更新我的问题。请检查并给你建议。谢谢!
标签: node.js aws-lambda node-mysql