1關鍵字begin開啟事務,中間執行相關sql語句,最後commit提交完成事務
mysql> begin;
query ok, 0 rows affected (0.00 sec)
mysql> insert into student (stu_id,name,c_id) values ('100','soul','1');
query ok, 1 row affected (0.00 sec)
mysql> commit;
query ok, 0 rows affected (0.04 sec)
mysql> select * from student where stu_id='100';
+--------+------+------+
| stu_id | name | c_id |
+--------+------+------+
| 100 | soul | 1 |
+--------+------+------+
1 row in set (0.00 sec)
2.在事務中執行的sql語句在commit之前可以回滾rollback
mysql> begin;
query ok, 0 rows affected (0.00 sec)
mysql> delete from student;
query ok, 7 rows affected (0.03 sec)
mysql> select count(*) from student;
+----------+
| count(*) |
+----------+
| 0 |
+----------+
1 row in set (0.00 sec)
mysql> rollback;
query ok, 0 rows affected (0.06 sec)
mysql> select count(*) from student;
+----------+
| count(*) |
+----------+
| 7 |
+----------+
1 row in set (0.00 sec)
mysql> commit;
query ok, 0 rows affected (0.00 sec)
mysql> select count(*) from student;
+----------+
| count(*) |
+----------+
| 7 |
+----------+
1 row in set (0.00 sec)
3.在事務中操作某條資料時,其他sql語句無法對其操作
事務內插入資料,外部不可見
mysql> begin;
query ok, 0 rows affected (0.00 sec)
mysql> insert into student (stu_id,name,c_id) values ('101','soul','1');
query ok, 1 row affected (0.00 sec)
mysql> select * from student where stu_id="101";
+--------+------+------+
| stu_id | name | c_id |
+--------+------+------+
| 101 | soul | 1 |
+--------+------+------+
1 row in set (0.00 sec)
mysql> select * from student where stu_id="101";
empty set (0.00 sec)
事務內修改資料,外部無法同時修改,會一直阻塞到commit
mysql> begin;
query ok, 0 rows affected (0.00 sec)
mysql> update student set name="abc" where stu_id="101";
query ok, 1 row affected (0.05 sec)
rows matched: 1 changed: 1 warnings: 0
mysql> update student set name="ccc" where stu_id="101";
error 1205 (hy000): lock wait timeout exceeded; try restarting transaction
了解mysql 事務介紹
目錄 事務由單獨單元的乙個或多個sql語句組成,在這個單元中,每乙個mysql語句是相互依賴的 由於整個單獨單元作為不可分割的整體,那麼如果單元中某條sql語句一旦執行失敗或產生失敗,整個單元就會回滾。要麼全部成功,要麼全部失敗。在mysql中用的最多的儲存引擎有 innodb,myisam,mem...
對springBoot事務的一些初步了解
事務的兩種管理方式 業務中相關的應用 事務由單獨單元的乙個或者多個sql語句組成,在這個單元中,每個sql語句時相互依賴的。而整個單獨單元作為乙個不可分割的整體,如果單元中某條sql語句一旦執行失敗或者產生錯誤,整個單元將會回滾,也就是所有受到影響的資料將會返回到事務開始以前的狀態 如果單元中的所有...
C Boost 初步了解
boost是由c 標準委員會成員發起 眾多c 業界高人參與設計並實現的乙個涉及面廣 質量高且業已廣泛使用的c 標準後備庫,其中 tr1已經被納入c 0x標準庫。不論從風格和內容組織上講,都可以認為boost專案是c 標準庫的延伸。截止到boost 1.43版本,boost專案擁有大約100個用途廣泛...