![](/img/trans.png)
[英]Why mysql JDBC driver returns TRANSACTION_READ_COMMITTED as default isolation level
[英]Why is TRANSACTION_READ_COMMITTED the default in Java?
事務教程在“ 使用事務來保護數據完整性”一節中進行了解釋:
默認事務隔離級別取決於您的 DBMS。 例如,對於 Java DB,它是 TRANSACTION_READ_COMMITTED。
對於我的 Postgresql 數據庫,它是相同的。 但這似乎不是最好的,因為只有TRANSACTION_SERIALIZABLE
可以防止所有不一致:
Isolation Level │Transactions │Dirty Reads │Non-Repeatable Reads│Phantom Reads
=============================================================================================
TRANSACTION_NONE │Not supported│Not applicable│Not applicable │Not applicable
TRANSACTION_READ_COMMITTED │Supported │Prevented │Allowed │Allowed
TRANSACTION_READ_UNCOMMITTED│Supported │Allowed │Allowed │Allowed
TRANSACTION_REPEATABLE_READ │Supported │Prevented │Prevented │Allowed
TRANSACTION_SERIALIZABLE │Supported │Prevented │Prevented │Prevented
為什么最佳選項不是默認值?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.