2013-10-08 64 views
0

我使用sqldeveloper(但這個問題也重複TOAD,所以我不認爲它是特別與sqldeveloper相關)。基本問題是,在我運行一個複雜的SELECT查詢,該查詢通過sqldeleloper使用數據庫鏈接後,它會通知我有關於在我關閉會話時需要回滾或提交的更改。奇怪的部分是,我只是運行一個SELECT查詢,並沒有更改爲COMMIT。有人可以向我解釋這種行爲嗎?數據庫事務通知的變化,當使用數據庫鏈接時沒有任何更改

+0

更多選擇在DBLINK時發生隱式事務。 – tbone

回答

2

在通過dblink選擇時發生隱式事務。

當甲骨文執行分佈式的SQL語句的Oracle保留在用於兩相回滾片段區域的 條目提交 處理。此項目將被保持到SQL語句致力於 即使SQL語句在此here查詢

更多。如果可以,我會嘗試挖掘Oracle鏈接。從馬口:)

兩階段提交機制

更多

數據庫必須保證在一個事務中的所有語句, 分佈式或非分佈式的,無論是提交或回滾作爲一個單位。 正在進行的交易的影響對所有節點上的所有其他交易都是不可見的;這種透明度應該爲 交易包括任何類型的操作,包括查詢, 更新或遠程過程調用。

從Oracle的Distributed Database Concepts導向

+0

謝謝!這是非常豐富的信息。 – Reimius

相關問題