为什么我不能在mysql中使用没有自动提交= 0的任何START TRANSACTION或COMMIT / ROLLBACK来使用INSERT?

蓝罗斯:

因此,我试图了解有关MySQL中的autocommit语句的更多信息,并且在理解为什么为什么在使用SET autocommit = 0;并尝试运行INSERT没有任何START TRANSACTION和否COMMIT/ROLLBACK的结果后仍将其插入表中时遇到了一些麻烦

据我了解,如果autocommit等于1,它将自动提交,因此这是有道理的,但是我将autocommit设置为零,因此,如果我不使用任何START TRANSACTIONwith COMMITROLLBACK阻塞替代insert,那它应该工作正常吗?

我知道有一些DML会自动提交,我也知道DDL语句也可以执行,但是在这种情况下,INSERT似乎不是任何执行该操作的DML语句。

代码如下:

SET autocommit = 0;
SELECT @@autocommit; --It returns 0

-- No START TRANCATION
INSERT INTO example(first_name, last_name) VALUES ('TEST', 'TSET');
-- No COMMIT nor ROLLBACK

有任何想法吗?

提前致谢!

秋名:

您可以在当前会话中看到这些行-但不会在其他会话中看到它们。

看:

在此处输入图片说明

比较时间戳...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章