アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在ブックストアの在庫数を変更するトリガーを作ってるのですが、ひとつの商品を買ったのにすべての商品の在庫数が減ったりしたりなど不具合が多くてお手上げです。

CREATE TRIGGER tg_add_BooksOrderDetail
ON BooksOrderDetail
FOR INSERT
AS
DECLARE @BooksID int,@OrderAmount int,@Stock int
SELECT @BooksID = bod.BooksID,
@OrderAmount = bod.OrderAmount,
@Stock = b.Stock - @OrderAmount
FROM BooksOrderDetail as bod,Books as b
WHERE b.BooksID = @BooksID
UPDATE Books
SET Stock = @Stock

return

A 回答 (1件)

SQL Serverのトリガに詳しくはないのですが、



UPDATE Books
SET Stock = @Stock

上記のupdate文は検索条件がなく、全行更新になっているのでは?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!