Oracle 创建触发器
发布时间:2020-12-12 16:23:30 所属栏目:百科 来源:网络整理
导读:createorreplacetriggerDATA_SYNC_@TABLE@beforeinsertorupdateordeleteon@TABLE@REFERENCINGOLDASold_empNEWASnew_empforeachrowbegin--通过应用程序修改时,F_SYNC_UPDATE=null或F_SYNC_UPDATE=0,此时不需要更新F_SYNC_DATE时间戳,也不需要记录删除记录if
createorreplacetriggerDATA_SYNC_@TABLE@ beforeinsertorupdateordeleteon@TABLE@ REFERENCINGOLDASold_empNEWASnew_emp foreachrow begin --通过应用程序修改时,F_SYNC_UPDATE=null或F_SYNC_UPDATE=0,此时不需要更新F_SYNC_DATE时间戳,也不需要记录删除记录 if(:new_emp.F_SYNC_UPDATEisnull)or(:new_emp.F_SYNC_UPDATE=0)then --插入和更新操作,更新时间戳F_SYNC_DATE=systimestamp和F_SYNC_UPDATE=null ifINSERTINGorUPDATINGthen selectsystimestamp,null into:new_emp.F_SYNC_DATE,:new_emp.F_SYNC_UPDATE fromdual; endif; ifINSERTINGthen --把新增加的记录插入到操作记录表 insertintoDATA_SYNC_B_OPERATOR (t_name,o_type,o_date,VKEYS) values ('@TABLE@',1,systimestamp,@INSERTVAL@); endif; ifDELETINGthen --把删除记录的主键添加到操作记录表 insertintoDATA_SYNC_B_OPERATOR (t_name,3,@UPDATEVAL@); endif; endif; endDATA_SYNC_@TABLE@; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |