GAE, Cloud SQL and run_in_transaction



我正在使用 GAE 和 Cloud SQL。

我似乎看不到文档中提到的这一点,所以我想我会问只是为了澄清我的理解。

是交易分组的标准方法,即:

def do_something_in_transaction(...)
  update my CloudSQL database record
  taskqueue.add(url='/path/to/my/worker', transactional=True)
  ...
db.run_in_transaction(do_something_in_transaction, ....)

假设适用于云 SQL?

我也可以在run_in_transaction通话期间更新/插入/删除多个记录(即我需要的任意数量)吗?

即:

def do_something_in_transaction(...)
   x_id = insert record into table x
   update table y record with x_id
   insert record into table a
   insert record into table b
   … etc
  taskqueue.add(url='/path/to/my/worker', transactional=True)

提前感谢,马 特

鉴于它是数据库组件的一部分,我认为run_in_transaction特定于数据存储。

对于 CloudSQL,请使用 SQL 事务命令 START TRANSACTION, COMMIT, ROLLBACK。

相关内容

  • 没有找到相关文章

最新更新