1

私がこのバッチを持っているとしましょう:

// Insert two order lines for order #2002 (Order_Lines table)
// Update order #2002 Total Quantity (Orders table)

INSERT INTO Order_Lines (OrderID, Line, PartID, Quantity)
   VALUES (2002, 1, 1234, 10);
INSERT INTO Order_Lines (OrderID, Line, PartID, Quantity)
   VALUES (2002, 2, 5678, 5);
UPDATE Orders 
   SET TotalQty = (SELECT SUM(Quantity) FROM Order_Lines WHERE OrderID = 2002)
   WHERE OrderID = 2002;

これを実行すると、サーバーはバッチ内の各ステートメントの実行が終了するのを待ってから、次のステートメントの実行を開始しますか?

私が本当に知りたいのは、このバッチを実行した場合にOrdersテーブルが正しく更新されるかどうかです。(挿入が最初に実行され、更新が最後に実行される場合は、正しく更新する必要があります。)

ちなみに、私はSQL2005と2008サーバーを使用しています。

4

1 に答える 1

0

はい、各ステートメントの結果を後続のステートメントで使用できると期待できます。

于 2013-01-25T04:39:10.023 に答える