问题描述
- ORA-00604: 递归SQL级别1出现错误, ORA-02067:要求事务处理或保存回退点
-
报的错如题:
ORA-00604: 递归SQL级别1出现错误
ORA-02067:要求事务处理或保存回退点A服务器oracle建立dblink,存储过程的内容是:往B服务器中oracle的表里插入数据。 在客户端访问调用此存储过程的时候报以上错误。
目前为了报错不显示在客户端只能用rollback,但是这样的话数据就插入不进去了。
代码如下,请大神们帮帮忙:
--【游标查询/插入】 declare CURSOR c_job IS select ID,AuditP,AuditD,AuditIdea from LX_YW_ProjectInfoD2 where ToRow_guid=Row_guid and ID not in(select GUOCHENG_ID from TA_SP_GUOCHENG@LXZJJZW where INSTANCE_ID=IDKey); c_row c_job%rowtype; BEGIN for c_row in c_job loop select st_name into Audit_P from sys_staffdef where st_id=c_row.AuditP; -- insert into TA_SP_GUOCHENG@LXZJJZW (GUOCHENG_ID,INSTANCE_ID,TACHE_NO,TACHE_NAME,TRANSACTOR_NAME,TRANSACT_IDEA,TRANSACT_TIME,REMARK,CREATE_DATE,LAST_UPDATETIME,DATA_SOURCE,IS_EXCHANGE,SYSTEM_SOURCE) select ID,SHILI_ID,GC_Code,GC_Name,Audit_P,AuditIdea,AuditD,'',Now_Date,Now_Date,'XXXX','N','2' from LX_YW_ProjectInfoD2 where ToRow_guid=Row_guid and ID=c_row.ID; end loop; END commit; exception when others then rollback;
解决方案
解决方案二:
http://blog.itpub.net/19602/viewspace-1054719/
时间: 2024-12-01 01:07:22