CREATE OR REPLACE TRIGGER TRX_CONTRACT_NOT_TRIGGER
BEFORE INSERT ON TRX_CONTRACT_NOT_SETTLEMENT FOR EACH ROW
DECLARE
n number(10);
BEGIN
n:=0;
SELECT count(*) INTO n FROM TRX_CONTRACT_NOT_UPDATEEMENT WHERE CONTRACTID=:NEW.CONTRACTID AND PERIO=:NEW.PERIO;
IF n>0 THEN
NULL;
ELSE
INSERT INTO TRX_CONTRACT_NOT_UPDATEEMENT
(
ID, busiType, busiTypeName, contractId,
agentAccNo, agentAccName, goodsName, prodFlag,
purchPrice, perio, flag, SettledTotal,
refundedTotal, SettledAmont, settlementTotal,
theRefundTotal ,settlementAmont, BUSI_DUE_DATE,
busiDueDate, js_status,sb_person,sh_examine,reg_Oper,UPDATE_TIME
)
SELECT
ID.NEXTVAL , busiType, busiTypeName, contractId,
agentAccNo, agentAccName, goodsName, prodFlag,
purchPrice, perio, flag, SettledTotal,
refundedTotal, SettledAmont, settlementTotal,
theRefundTotal ,settlementAmont, BUSI_DUE_DATE,
busiDueDate, js_status,sb_person,sh_examine,reg_Oper,UPDATE_TIME
FROM
TRX_CONTRACT_NOT_SETTLEMENT;
END IF;
END ;
报错:触发器/函数不能读取他,请是什么错误
oracle触发器中不能对基本(就是触发器所在的表)进行操作,如果有该需求,请在该触发器中使用自治事务。关于自治事务的详细内容请查阅百度。http://blog.csdn.net/alex197963/article/details/2036500