Mysql 中不commit也可以改变数据库吧,那么写不写commit命令有什么区别呢?
主要指(INSERT/DELETE/UPDATE/SELECT),本人初学者,谢谢大家的指点。应该是写好还是不写好。...
主要指(INSERT / DELETE / UPDATE / SELECT ),本人初学者,谢谢大家的指点。应该是写好还是不写好。
展开
展开全部
这个要看你用什么“存储引擎”
如果是不支持事务的引擎,如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。
如果是不支持事务的引擎,如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。
展开全部
使用了commit后你不可以回退,它会永久改变你的数据,而不使用只是临时改变,它把改变后的内容备份了一份在日志中,你可以rollback还原回来,看情况而用了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-08-31
展开全部
这个要看你用什么“存储引擎”
如果是不支持事务的引擎,如myisam,则是否commit都没有效的。
如果是支持事务的引擎,如innodb,则有系统参数设置是否自动commit,查看参数如下:
mysql> show variables like '%autocommit%';
如果是不支持事务的引擎,如myisam,则是否commit都没有效的。
如果是支持事务的引擎,如innodb,则有系统参数设置是否自动commit,查看参数如下:
mysql> show variables like '%autocommit%';
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
话说mysql在进行数据操作语言(dml)(即insert,delete等)的时候是默认自动commit的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询