私はnode-sqlを使用しています。Prepare ステートメントを使用してテーブルにレコードを挿入しようとすると、recordSet が定義されていません。以下はコードのサンプル行です。
ps.execute(data, function (err, recordSet, affected) { });
レコードはデータベースに正常に挿入されますが、コールバック関数で未定義の変数が返されます。
私はnode-sqlを使用しています。Prepare ステートメントを使用してテーブルにレコードを挿入しようとすると、recordSet が定義されていません。以下はコードのサンプル行です。
ps.execute(data, function (err, recordSet, affected) { });
レコードはデータベースに正常に挿入されますが、コールバック関数で未定義の変数が返されます。
はい、答えが見つかりました。OUTPUT 句を使用して、返されるレコードを指定する必要があります。お気に入り:
INSERT INTO Table OUTPUT.Id VALUES(...);
あなたの声明が実際に何をするかを共有しませんでした。ただし、prepare ステートメントを使用してレコードを挿入する場合。次に、recordSet の代わりに、"returnValue" または "affected" コールバック パラメータを使用できます。node-sql が示すように、レコードセットを返す選択クエリを実行している場合、レコードセットには値があります。見る
request.execute('record', function(err, recordsets, returnValue, affected) {
// ... error checks
console.log(recordsets.length); // count of recordsets returned by the procedure
console.log(recordsets[0].length); // count of rows contained in first recordset
console.log(returnValue); // procedure return value
console.log(recordsets.returnValue); // same as previous line
console.log(affected); // number of rows affected by the statemens
console.log(recordsets.rowsAffected); // same as previous line
console.log(request.parameters.output_parameter.value); // output value
// ...
});