1

このコードは、「接続がまだ開いていません」という結果になります。エラー。プールは接続されており、レコードを更新する最初の選択で使用できます。

データを処理すると、UPDATE ステートメントの配列ができます。その後、インライン非同期関数が実行され、上記のエラーが発生します。

また、単一のクエリで複数の UPDATE ステートメントを実行しようとしました。これにより、クエリ更新配列に配列メンバーが 1 つしかない場合を除き、UNKNOWN エラーが発生します。

これは SQL Server 2000 に対して実行されています。

const doQuery = async (pool, sqlStr) => {
    return await pool.request().query(sqlStr);
};

const updateResidental = async args => {
    let toUpdateSql = `SELECT * FROM blah WHERE blah=blah)`;
    const toUpdate = (await doQuery(args.pool, toUpdateSql)).recordset;

    const sqlStrings = ['UPDATE blah1;','UPDATE blah2;','UPDATE blah3;'];

    (async pool => {
        return await Promise.all(sqlStrings.map(async sqlStr => {
            return await doQuery(pool, sqlStr);
        })).then(results => {
            console.log(results);
        }).catch(err => {
            console.log(err)
        });
    })(args.pool);
}
4

0 に答える 0