2

我有一个代码块,其中有两个等待语句。服务器第一次运行时,我相信它正在等待 SQL.connect。在通过此方法进行了几次通话(留出时间进行连接)之后,该过程就可以正常工作了。

这是针对 NodeJS、MSSQL 包的。

为什么我的第一个等待,而不是等待?

    async execStoredProc(spDescriptor: StoredProcedureDescriptor) {
    if (!this.pool) {
        if (this.isFirst) {
            this.isFirst = false ;
        } else {
            SQL.close();
        }
        this.pool = await SQL.connect(this.config);
    }

    try {
        const request = new SQL.Request(this.pool) ;

        spDescriptor.parms.forEach(function(sqlParm: SqlParm){
            request.input(sqlParm.name, sqlParm.sqlType, sqlParm.value) ;
        })

        const qryresult = await request.execute(spDescriptor.storedProcedureName)

        let result = {} ;
        if (spDescriptor.multipleResultSets) {
            result = qryresult.recordsets ;
        } else {
            result = qryresult.recordset ;
        }
        return result ;
    } catch (err) {
        console.log("SQL Error===>", err);
        return [] ;
    }
}
4

0 回答 0