2013-05-28 97 views
0

總是創建一個事務是不好的做法?總是創建一個事務是一個不好的習慣嗎?

我的意思是隻爲一個簡單的選擇創建一個事務的一個好習慣。

創建交易時的成本是多少?

即使您正在使用隔離級別read_uncomitted。是不好的做法?因爲它不應該有鎖定問題。

更新: 更好的答案在這裏: https://dba.stackexchange.com/questions/43254/is-a-bad-practice-to-create-a-transaction-always

+0

這個問題會更適合當你需要一個交易dba.stackexchange.com – Kermit

+0

使用顯式事務。 –

+0

我不確定你的意思是什麼,只是爲了一個簡單的select或many創建一個事務。所以已經編輯了這個問題(希望)使它更清晰。如果這不是你想要的,請自己澄清一下。 –

回答

4

事務是資源密集型的,他們也記錄元數據,而這樣做。 我建議遠離在簡單的SELECT語句上使用事務。我會建議在複雜的存儲過程中使用事務。您必須記住,如果您始終使用交易,則會在鎖定資源時冒風險。

有一個快速閱讀這裏進一步解釋相關 - SQL Recommended Best Practices for Transactions

+0

我們使用一個總是打開事務並使用read_uncomitted isloation級別的DAL。有了這個隔離級別,我們不應該有鎖定問題。那麼,這仍然是一個不好的做法? – elranu

+1

除非您更改數據庫中的數據,否則絕不應該有事務。讀取未提交的隔離級別也是一種非常糟糕的做法,並導致返回的數據可能會回退,因此不會在數據庫中真正存在。 – HLGEM

相關問題