我有这个触发器,每当使用DIMPRODUCT
表中的PRODUCTACTUALCOST
AND PRODUCESALESCOST
在FACTPRODUCTSALES
中插入值时,我都会尝试更改SALESTOTALCOST
AND PRODUCTACTUALCOST
。
代码如下:
CREATE TRIGGER FACTPRODUCTSALES_INSERT
AFTER INSERT ON FACTPRODUCTSALES
FOR EACH ROW
DECLARE
ACTUALCOST NUMBER;
SALESCOST NUMBER;
BEGIN
SELECT PRODUCTACTUALCOST INTO ACTUALCOST FROM DIMPRODUCT WHERE PRODUCTKEY = :NEW.PRODUCTID;
SELECT PRODUCTSALESCOST INTO SALESCOST FROM DIMPRODUCT WHERE PRODUCTKEY = :NEW.PRODUCTID;
:NEW.SALESTOTALCOST = SALESCOST * :NEW.QUANTITY;
:NEW.PRODUCTACTUALCOST = ACTUALCOST * :NEW.QUANTITY;
END;
但它一直要求我提供绑定变量;这是什么?为什么?我该怎么办?
我已经试过根据this和this中的答案做SET DEFINE OFF
,但它没有工作。
1条答案
按热度按时间pieyvz9o1#
假设表存在并且包含所涉及的列,则:
before
(第1行)(如果要修改:new
值):=
代替=
(第10、11行)