Oracle データベースの場合: 次のクエリを試しました。
CREATE or REPLACE TRIGGER myTrigger
AFTER UPDATE OR INSERT ON product
REFERENCING NEW AS NEW
FOR EACH ROW
BEGIN
INSERT INTO h_product
(
H_PRODUCT_ID,
PRODUCT_ID
)
VALUES
(
seq_h_product.nextval,
:new.product_id
);
END
実行すると、次のエラーが発生します。
3:56:45 [UPDATE - 0 row(s), 0.000 secs] [Error Code: 4098, SQL State: 42000] ORA-04098: Déclencheur 'NEILA.myTrigger' non valide. Echec de la revalidation
私は実行します:
select object_name
from dba_objects
where object_type = 'TRIGGER'
and status = 'INVALID';
=> リストに myTrigger が表示されます! なぜ無効なのですか?