我有两个表创建了库存和 customer_sales。在仓库中工作的个人无权访问 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 服务器管理工作室。我是新手,这是我对学校的一个问题。