事务

创数据库
mysql> CREATE DATABASE xiao;
Query OK, 1 row affected
使用数据库
mysql> USE xiao;
Database changed
一、事务
所谓事务就是针对数据库的一组操作,它可以由一条或多条SQL语句组成,同一事务
操作具备同步的特点,事务中的语句要么都执行,要么都不执行
(1)开启事务
首先创建一个名为xiao的数据库,并创建一个account表
mysql>CREATE TABLE account(
    ->id INT primary key auto_increment,
    ->name VARCHAR(40),
    ->money FLOAT
    ->);
Query OK, 0 rows affected
插入相应数据
mysql>INSERT INTO account(name,money) VALUES('a',1000);
Query OK, 1 row affected
mysql>INSERT INTO account(name,money) VALUES('b',1000);
Query OK, 1 row affected
开启一个事务
mysql>START TRANSACTION;
Query OK, 0 rows affected
然后通过UPDATE语句将a账户的100元钱转给b账户
mysql>UPDATE account SET money=money-100 WHERE NAME='a';
Query OK, 1 row affected
Rows matched: 1  Changed: 1  Warnings: 0
mysql>UPDATE account SET money=money+100 WHERE NAME='b';
Query OK, 1 row affected
Rows matched: 1  Changed: 1  Warnings: 0
提交事务
mysql>COMMIT;
Query OK, 0 rows affected
上述语句执行成功后,可以使用SELECT语句来查询account表中的
回滚事务
mysql>ROLLBACK;
需要注意的是,ROLLBACK语句只能针对未提交的事务执行回滚操作,一提交的事
务是不能回滚的
 
posted @ 2019-12-26 12:16  别叫我静静  阅读(139)  评论(0)    收藏  举报