0
可能重複:
Oracle Accessing updated records during the same transaction在存儲過程中使用遊標DELETE語句後
我有一個Oracle存儲過程有點像這樣(實際的sql語句是不同的)
CREATE OR REPLACE PROCEDURE mysp
IS
v_copied_row table%ROWTYPE ;
CURSOR p_copied_rows IS
select *
from table ;
BEGIN
delete from table
where <some condition>
OPEN p_copied_rows ;
LOOP
FETCH p_copied_rows into v_copied_rows ;
<do something with fetched row>
END LOOP
close p_copied_rows;
END;
理想情況下,我期待刪除的行不應該是結果集的一部分我是從光標提取,但這些都是。
我是oracle新手,想知道如果我在這裏做錯了什麼?
P.S.我必須使用光標來處理一些複雜的事情,所以用SQL代替光標不是一種選擇。
我的不好。在運行上述過程時,我錯過了一個聲明。版主可以刪除/關閉這篇文章 –