Oracle Form中COMMIT的概述及使用方法
发布时间:2021-12-08 13:58:15 所属栏目:教程 来源:互联网
导读:1. COMMIT_FORM和COMMIT 都对form和数据库进行提交。针对form上面的数据变动提交到后台数据库,同时数据库提交数据。 2. DO_KEY(COMMIT_FORM) 它会首先执行KEY-COMMIT触发器里面的代码,如果没有这个触发器,则会做COMMIT_FORM一样的操作。 3. FORMS_DLL(COMM
1. COMMIT_FORM和COMMIT 都对form和数据库进行提交。针对form上面的数据变动提交到后台数据库,同时数据库提交数据。 2. DO_KEY('COMMIT_FORM') 它会首先执行KEY-COMMIT触发器里面的代码,如果没有这个触发器,则会做COMMIT_FORM一样的操作。 3. FORMS_DLL('COMMIT') 只针对代码中insert、update、delete语句进行提交,form上面的数据不提交。 DG 里面提到: Replace COMMIT with do_key('commit_form'), This routine raises the exception FORM_TRIGGER_FAILURE if there is an invalid record. COMMIT时触发器执行顺序: (1).KEY-COMMIT (2).PRE-COMMIT (3).PRE/ON/POST DELETE (4).PRE/ON/POST UPDATE (5).PRE/ON/POST INSERT (6).ON-COMMIT (7).Post DataBase Commit 4. QUIETCOMMIT oracle form "悄悄" 提交。如果使用commit_form的话会弹出信息提示"没有修改需要保存"或者"XXX记录已保存"。如果你不想提示出现,则可以调用函数 app_form.quietcommit。由于是一个function, 所以需要定义一个变量用来接收返回值, 返回值类型为boolean,当true的时候就说明成功, 否则commit失败。 将系统的消息级别改为较低级别也可调用如下过程: 复制代码 代码如下: PROCEDURE docommit IS old_level VARCHAR2(2); BEGIN old_level := name_in('system.message_level'); copy('5', 'system.message_level'); COMMIT; copy(old_level, 'system.message_level'); END; ![]() (编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |