使用Forms开发,如何能获取更改前后的数据? 或者说有什么变量能代表修改前的数据 的?例如:表中某个值为30,在Forms的数据块中修改成50(非SQL语句修改),在未提交commit的时候,怎样得到前期值30,跟后期值50呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1:触发器实现2:分别获取前后值更新前值,查询即可获取RETURNING 可获取更新后值例: UPDATE emp SET sal = sal + 1000 WHERE empno = 7499 RETURNING ename, sal INTO empName, empSalary; DBMS_OUTPUT.put_line('Name of Employee: ' || empName); DBMS_OUTPUT.put_line('New Salary: ' || empSalary); 我使用的是Forms Builder开发的,用户在Forms里直接修改数据,然后使用commit更新到数据据里,我怎样在commit时获取得到更新前的数据呢?first_record;loop /* 这里如何获得每一行的数据的更改前数据? */ EXIT WHEN :SYSTEM.LAST_RECORD='TRUE'; next_record;end loop;commit; 关于protege连接oracle的问题。。 日期格式转换 dmp文件导入oracle提示表空间不存在 求助oracle nvl函数的使用方法 ???请问如何释放磁盘空间??? sort_area_size?? 谁能和我 解释一下solaris中核心参数怎么配置,什么意思? 急!!orcale9i 请各位推荐Oracle的经典书 请教:什么是Query语句? 求助 OCI连接报错12154错误问题 怎么把access数据库表中某列的值求和?
2:分别获取前后值
更新前值,查询即可获取
RETURNING 可获取更新后值
例: UPDATE emp
SET sal = sal + 1000
WHERE empno = 7499
RETURNING ename, sal
INTO empName, empSalary;
DBMS_OUTPUT.put_line('Name of Employee: ' || empName);
DBMS_OUTPUT.put_line('New Salary: ' || empSalary);
first_record;
loop
/* 这里如何获得每一行的数据的更改前数据? */
EXIT WHEN :SYSTEM.LAST_RECORD='TRUE';
next_record;
end loop;
commit;