Peewee – atomic交易

Peewee – atomic交易

Peewee的数据库类有一个 atomic() 方法来创建一个上下文管理器。它启动了一个新的事务。在上下文块中,可以根据交易是否成功完成或遇到异常来提交或回滚。

with db.atomic() as transaction:
   try:
      User.create(name='Amar', age=20)
      transaction.commit()
   except DatabaseError:
      transaction.rollback()

atomic()也可以作为装饰器使用。

@db.atomic()
def create_user(nm,n):
   return User.create(name=nm, age=n)

create_user('Amar', 20)

多于一个的原子事务块也可以被嵌套。

with db.atomic() as txn1:
   User.create('name'='Amar', age=20)

   with db.atomic() as txn2:
      User.get(name='Amar')

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程