在庫と顧客販売の 2 つのテーブルを作成しました。倉庫で働く個人は、customer_sales テーブルにアクセスできません。
そこで、在庫テーブルに num_sales というフィールドを追加しました。
新しい顧客の販売が追加されるたびにトリガー関数を作成したいと考えています。これは、テーブル全体ではなく、販売された行であった特定の inventory_item に対応します。
これは私がこれまでに持っているものです。
ALTER TABLE inventory
ADD num_sales INT
UPDATE movies SET num_sales = 0;
ALTER TABLE movies ALTER COLUMN num_rentals INT NOT NULL;
GO
CREATE TRIGGER tr_movies_num_rentals_add
ON customer_sales FOR INSERT
AS
BEGIN
UPDATE inventory
SET num_sales = num_sales + (SELECT sale_status_code FROM INSERTED)
WHERE 1 = (SELECT sale_status_code FROM INSERTED);
END;
注: sale_status_code の値: 1 = 販売済み、2 = 予約済み、3 = 紛失。
更新: Microsoft SQL サーバー管理スタジオを使用しています。私は初心者で、これは学校での質問です。