是单个sql语句在innodb中始终是原子的吗?

jil*_*len 4 mysql sql innodb

有这样的SQL

UPDATE xxx SET num = num -1 num> 0;

即使我没有交易记录,这也会是原子操作吗?

此sql可以确保num字段始终为非负数吗?

Dit*_*ndt 5

如果启用了自动提交,则将自动执行。除非禁用了自动提交,否则每个语句都是一个事务。

应当注意,默认情况下自动提交是启用的,因此为什么通常需要使用START TRANSACTION来启动事务。