0
如果我想在事务块中写入多个SQL语句,并确保该块的所有ACID属性都被遵循,那我该如何实现?在django交易中如何提供ACID属性?
示例 - 当我使用transaction.atomic时,它为该代码块提供原子性,但它是否提供并发控制和隔离(表级别或行级别)?
我目前使用PostgreSQL和我设置隔离级别到ISOLATION_LEVEL_SERIALIZABLE。
这是否为我提供了transaction.atomic块的序列化交易?
如果不这样做,它是如何做到的?
对不起,花了时间来测试这个。 transaction.atomic只是承诺其全部或全部查询都不会运行。无论我选择什么样的数据库设置。 – RA123
@ RA123:如果您遇到问题,我建议您发布关于此问题的具体问题并获得帮助。编程中的各种各样的东西都可能出错,使您无法获得预期的结果。但是你问了一个非常普遍的问题,答案是Django通过使用底层数据库的事务(和隔离级别)实现'transaction.atomic'。 –