1
我有一個存儲過程中使用的序列更新多個表就像如下:在數據庫中使用序列時,如何確保線程安全?
create procedure()
-- retrieve new sequence number
sequence.nextval();
-- update table_A using newly created sequence number
insert into table_A(theID) values(sequence.currval());
-- update table_B using newly created sequence number
insert into table_B(theID) values(sequence.currval());
end procedure;
我可以知道上面的代碼是否是線程安全的實現?對於每個過程的執行,我可以保證table_A和table_B中的ID每次執行多個執行時總是檢索相同的序列號?
非常感謝您的回覆,我知道這是否適用於觸發器?如果這是真的,那麼我可以節省很多努力。 ;) – huahsin68 2012-04-28 06:32:32
是的,這同樣適用於觸發器內部。 – 2012-04-28 15:10:31