我正在解析许多文本文件,并将数据插入表中。对于一种文件类型,我需要在两个表之间拆分文件。表A具有SysId:integer和MyId:整数。表B具有NewId:整数和MyId:整数。我将其简化为其他许多领域,但这是关键。表A将只有一个MyId实例。表B将具有多个实例,因此它是一对多的。我首先查询表A中的MyId。如果我的函数返回-1,则可以安全添加。如果没有,我将获取MyID值,以用于将许多记录发布到表B中。我遇到的问题是我拥有的函数,从不返回任何内容。
我尝试获取ID
lMyId=123456
FoundMyId=GetId(lMyId);
但是此函数从不返回任何内容
这是功能。
function GetId(pMyId) {
db.any('SELECT myid FROM mytable WHERE myid=$1', [pMyId])
.then(function(data) {
if (data.length>0) {
return data[0].myid
}
})
.catch(function(error) {
// error;
});
}
每当我检查FoundMyId时,它都是未定义的。
我意识到这可能是所有异步运行的问题,但是必须有一种方法可以实现。