知識點 Mysql 基本用法之事務

2022-07-05 12:12:15 字數 1304 閱讀 2661

事務用於將某些操作的多個sql作為原子性操作,一旦有某乙個出現錯誤,即可回滾到原來的狀態,從而保證資料庫資料完整性。

事務例項:

create table user(

id int

primary key auto_increment,

name

char(32),

balance

int);

insert into user(name,balance)

values

('大木木',1000),

('二木木',1000),

('三木木',1000);

#原子操作

start transaction;

update user set balance=900 where name='大木木'; #買支付100元

update user set balance=1010 where name='二木木'; #中介拿走10元

update user set balance=1090 where name='三木木'; #賣家拿到90元

commit;

#出現異常,回滾到初始狀態

start transaction;

update user set balance=900 where name='大木木'; #買支付100元

update user set balance=1010 where name='二木木'; #中介拿走10元

uppdate user set balance=1090 where name='三木木'; #賣家拿到90元,出現異常沒有拿到

rollback; #回到原來的狀態

commit;

mysql> select *from user;

+----+------+---------+

| id | name | balance |

+----+------+---------+

| 1 | 大木木 | 1000 |

| 2 | 二木木 | 1000 |

| 3 | 三木木 | 1000 |

+----+------+---------+

3 rows in set (0.00 sec)

一、【mysql 基本用法之檢視】

二、【mysql 基本用法之觸發器】

三、【mysql 基本用法之事務】

四、【mysql 基本用法之儲存過程】

五、【mysql 基本用法之函式】

六、【mysql 基本用法之流程控制】

MYSQL 事務知識點

事務是乙個完整的業務邏輯單元,不可再分。例如 銀行轉賬,a b轉賬10000,需要執行兩條update語句。update t act set balance balance 10000 where actno act 001 update t act set balance balance 1000...

mysql知識點歸納 事務篇

願歷盡千帆,歸來仍是少年 簡述何為事務 控制資料的一致性。檢視當前資料庫事務隔離級別 select tx isolation 查詢超過60s的事務 select from information schema.innodb trx where time to sec timediff now trx...

mysql基本知識點

1.建表 格式 create table 表名 欄位名 約束條件,欄位名 約束條件,示例 create table brand brand id int unique primary key,brand name varchar 20 brand kind varchar 10 2.顯示表的資訊 s...