我有一点问题,我必须在同一张桌子上的字段,ficha_terminada和fecha
CREATE OR REPLACE TRIGGER FECHA
AFTER UPDATE OF FICHA_TERMINADA ON table_PRODUCT FOR EACH ROW
BEGIN
UPDATE table_PRODUCT SET new.FECHA = SYSDATE;
END;
我只想在更新该行的ficha_terminada时更新该行的fecha字段,到现在为止更新该行。
但在这一行UPDATE table_PRODUCT SET new.FECHA = SYSDATE;
ORA-00904: invalid identifier
但字段存在!!
答案 0 :(得分:0)
我认为这是对新参考的误用:新的。不能在UPDATE中用作更改的目标列。
您必须在触发器中使用PL / SQL:
NEW.fetcha := sysdate;
祝你好运
答案 1 :(得分:0)
使用Pavel的解决方案,但在更新之前的行触发器中。
待办事项
Product
id:
type: food/drink/smoke etc..
foodproduct: one to Many nullable: FoodProduct (it's actually one to zero/one but i find it more performant)
drinkproduct: one to Many nullable: DrinkProduct
smokeproduct:one to Many nullable: SmokeProduct
FoodProduct:
id:
product_id (many to one to Product)
options one to many to foodOptions