好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

MySQL学习之事务控制

CREATE TABLE bank_account(
	id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
	name VARCHAR(30) COMMENT '姓名',
	balance DECIMAL(18, 2) COMMENT '账户余额');INSERT INTO bank_account(id, name, balance) VALUE(1, '张三', 0);INSERT INTO bank_account(id, name, balance) VALUE(2, '李四', 0);UPDATE bank_account SET balance = balance + 1000 WHERE id = 1;


3. 查看默认的autocommit值

SELECT @@autocommit;


4. 查看bank_account数据表所有记录

SELECT * FROM bank_account;


5. 开始事务控制并执行两条SQL语句

START TRANSACTION;UPDATE bank_account SET balance = balance - 100 WHERE id = 1;UPDATE bank_account SET balance = balance + 100 WHERE id = 2;COMMIT;


6. 查看此时数据表的内容

SELECT * FROM bank_account;


7. 再次开始事务控制,同样插入两条一样的SQL语句,但将commit(提交)变为rollback(回滚)

START TRANSACTION;UPDATE bank_account SET balance = balance - 100 WHERE id = 1;UPDATE bank_account SET balance = balance + 100 WHERE id = 2;ROLLBACK;


8. 再次查看数据表内容,发现回滚之后数据无变化

SELECT * FROM bank_account;


注:本文是博主MySQL学习的总结,不支持任何商用,转载请注明出处!如果你也对MySQL学习有一定的兴趣和理解,欢迎随时找博主交流~

更多相关免费学习推荐: mysql教程 (视频)

以上就是MySQL学习之事务控制的详细内容!

查看更多关于MySQL学习之事务控制的详细内容...

  阅读:54次