使用Django和PostgreSQL进行事务(@atomic)的默认隔离级别

问题描述 投票:3回答:2

我想知道将Django与PostgreSQL数据库一起使用时的默认隔离级别是什么。可序列化隔离? (https://www.postgresql.org/docs/9.1/static/transaction-iso.html#XACT-SERIALIZABLE

有一个关于MySQL(Django transaction isolation level in mysql & postgresql)的讨论,但尽管它的名字似乎并没有讨论PostgreSQL

谢谢!

django postgresql transactions atomic
2个回答
6
投票

来自docs

与PostgreSQL本身一样,Django默认为READ COMMITTED隔离级别。


0
投票

可以使用如下数据库设置配置Django:

import psycopg2.extensions

DATABASES = {
    # ...
    'OPTIONS': {
        'isolation_level': psycopg2.extensions.ISOLATION_LEVEL_SERIALIZABLE,
    },
}

文档 - https://docs.djangoproject.com/en/2.2/ref/databases/#isolation-level

© www.soinside.com 2019 - 2024. All rights reserved.