2013-01-18 23 views
1

Django documentation着重於寫操作。我很疑惑Django在讀取一致性時提供了什麼保證。如果一個請求執行多個讀取查詢,並且第二個請求在這些查詢之間寫入數據庫,是否保證第一個請求不會看到這些修改?在單個Django請求中運行的所有查詢是否都在相同的數據庫快照上運行?關於事務管理的

爲了說明一個簡單的例子問題:

c1 = select count(*) from Users 
    <--- here User added by some other request 
c2 = select count(*) from Users 
assert c1 == c2 <-- Is this always true? 

如果沒有這樣的保證,是有可能實現這種隔離?

+0

好問題,我現在也想知道你說的。 – PepperoniPizza

回答

0

Django並不負責保證這些事情:它取決於數據庫。但是,Django在默認情況下會在每個請求中執行它自己的事務,這意味着它被隔離用於讀取。

相關問題