【发布时间】:2014-01-06 08:31:40
【问题描述】:
这里我想增加字段计数,然后在一个原子操作中选择计数结果。
代码是:
sql = ("update user_cout set count = count+1 "
"where username=%s")
cursor = connection.cursor()
cursor.execute(sql, (username, ))
cursor.execute("select count from user_count "
"where username=%s", (username, ))
有什么推荐的方法吗?
【问题讨论】:
-
你的做法有什么问题?
-
@Barmar 它可以在一个语句中工作吗?这两条语句应该是原子操作
-
我认为您需要关闭光标并重新打开它才能计数
-
@AshReva 我更新了这个问题,这两个操作应该在一个事务中或一个语句中
-
@AshReva 但如果他这样做,其他进程可能会更新计数,他会得到错误的值。他想留在交易中,以便获得他刚刚分配的价值。
标签: python mysql mysql-python