我的问题是,如何删除读取的记录?我正在使用Oracle ond AIX和c ++应用程序中的Roguewave DB Layer.
我一直在谷歌搜索这个答案,但似乎只有简单的例子.是否有返回已删除行的SQL语句?
这将极大地提高我的应用程序的性能,因为只有0.1%的情况需要保留在此表中,换句话说,我将0.1%插回到表中.
我发现的唯一提示是"Into"子句,我会假设使用delete into会完成这项工作,但我从未使用它.
http://docs.oracle.com/cd/B19306_01/appdev.102/b14261/returninginto_clause.htm
根据oracle文档,确实可以一次删除和阅读:
DELETE FROM employees
WHERE job_id = 'SA_REP'
AND hire_date + TO_YMINTERVAL('01-00') < SYSDATE
RETURNING salary INTO :bnd1;
Run Code Online (Sandbox Code Playgroud)
我自己从未使用过它......但是你可以尝试一下.