爲什麼在代碼中沒有事務管理有什麼好的理由?有沒有很好的理由不讓你的申請處理任何交易?
問題出現在與dba交談時,當我提出spring/hibernate時,dba非常緊張。我提到Spring可以處理事務,使用Hibernate將表映射到對象等,並且問題出現了,數據庫(Oracle10g)已經處理事務管理,所以我們應該使用它。他甚至提出了這樣的想法,即我們創建了一堆DB過程來執行插入/更新,以便數據庫可以更有效地處理事情,並返回0/1是否插入/更新工作。
有沒有很好的理由不讓你的應用程序處理任何交易?我的dba無能爲力嗎?我想他是,但是當我不確定答案時,我不是一個很好的演講者......這就是我尋找答案的原因。
值得補充的是,與其他數據庫產品不同,Oracle不需要顯式的BEGIN TRANSACTION(除非您使用SERIALIZABLE隔離級別,這是一個單獨的主題)。但除非你能清楚地理解諸如幻像讀寫,髒讀等交易概念,否則不要嘗試批評DBA。 – 2011-06-01 23:54:36