Mysql innodb中的单个sql语句总是原子的吗?

Mysql innodb中的单个sql语句总是原子的吗?,mysql,sql,innodb,Mysql,Sql,Innodb,有这样一个sql 更新xxx SET num=num-1,其中num>0 即使我没有事务语句,这也是一个原子操作吗 此sql能否确保num字段始终为非负 如果启用了自动提交,则它将以原子方式执行。除非禁用自动提交,否则每条语句都将是一个事务 需要注意的是,默认情况下会启用自动提交,因此启动事务通常需要启动事务。此sql是否可以确保num字段始终为非负?是的,它会。如果此查询的结果为负数,则应检查以确保启用了自动提交选择@@自动提交应该返回1.0。考虑了很多。自动提交实际上已启用。我将使用此sql

有这样一个sql

更新xxx SET num=num-1,其中num>0

即使我没有事务语句,这也是一个原子操作吗


此sql能否确保num字段始终为非负


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


需要注意的是,默认情况下会启用自动提交,因此启动事务通常需要启动事务。

此sql是否可以确保num字段始终为非负?是的,它会。如果此查询的结果为负数,则应检查以确保启用了自动提交<代码>选择@@自动提交应该返回1.0。考虑了很多。自动提交实际上已启用。我将使用此sql来防止在同时访问我的系统时出现负数