Mysql 中不commit也可以改变数据库吧,那么写不写commit命令有什么区别呢?
发布网友
发布时间:2022-05-01 14:29
我来回答
共6个回答
热心网友
时间:2022-05-01 15:59
这个要看你用什么“存储引擎”
如果是不支持事务的引擎,如myisam,则是否commit都没有效的。
如果是支持事务的引擎,如innodb,则有系统参数设置是否自动commit,查看参数如下:
mysql> show variables like '%autocommit%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit | ON |
+---------------+-------+
1 row in set (0.00 sec)
mysql>
显示结果为on表示事务自动提交,也即不用手工去commit。
当然,你可以设置其为OFF,然后自己手工去commit。
热心网友
时间:2022-05-01 17:17
使用了commit后你不可以回退,它会永久改变你的数据,而不使用只是临时改变,它把改变后的内容备份了一份在日志中,你可以rollback还原回来,看情况而用了。
热心网友
时间:2022-05-01 18:51
这个要看你用什么“存储引擎”
如果是不支持事务的引擎,如myisam,则是否commit都没有效的。
如果是支持事务的引擎,如innodb,则有系统参数设置是否自动commit,查看参数如下:
mysql> show variables like '%autocommit%';
热心网友
时间:2022-05-01 20:43
话说mysql在进行数据操作语言(dml)(即insert,delete等)的时候是默认自动commit的
热心网友
时间:2022-05-01 22:51
可以
热心网友
时间:2022-05-02 01:15
那 MYSQL“事务”的机制如何体现?