【发布时间】:2019-01-24 03:18:50
【问题描述】:
我需要在触发器中基于这样的条件在 BEGIN 语句之后创建一个 CURSOR:
IF :OLD.DWF_STATUS = 'P' AND :NEW.DWF_STATUS = 'C' THEN
DECLARE CURSOR cur_list IS
SELECT DISTINCT DR_PRJ_ID, STR_EMAIL, DWFU_US_ID
FROM DOC_WORKFLOW JOIN DOC_WF_USERS ON DWFU_DWF_ID = DWF_ID
JOIN DOCUMENT_REF ON DWF_DR_ID = DR_ID AND DR_TYPE = 'P'
LEFT OUTER JOIN ST_REGISTER ON STR_ID = DWFU_STR_ID
WHERE DWF_ID = :NEW.DWF_ID;
END IF;
当我编译时,我得到这个错误:
错误 (99,5):PLS-00103:在预期以下情况之一时遇到符号“END”:
开始函数 pragma 过程子类型类型
当前光标删除之前存在
如何在Oracle触发器BEGIN语句后声明游标?
【问题讨论】:
标签: oracle plsql database-trigger