MySQL 5.7 的事務控制語句的介紹
START TRANSACTION 或 BEGIN 語句開始一個事務
COMMIT 語句提交事務,使得資料的更改永久生效
ROLLBACK 語句回滾事務,取消對資料的更改
SET autocommit 語句禁止或啟用當前會話預設的事務自動提交功能
--例子
mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @A:=SUM(deptno) FROM test;
+-----------------+
| @A:=SUM(deptno) |
+-----------------+
| 150 |
+-----------------+
1 row in set (0.00 sec)
mysql> UPDATE test SET deptno=@A WHERE deptno=10;
Query OK, 1 row affected (0.05 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> commit;
Query OK, 0 rows affected (0.01 sec)
--關閉當前會話事務的自動提交功能
mysql> SET autocommit=0;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%commit%';
+--------------------------------+-------+
| Variable_name | Value |
+--------------------------------+-------+
| autocommit | OFF |
| innodb_commit_concurrency | 0 |
| innodb_flush_log_at_trx_commit | 1 |
+--------------------------------+-------+
3 rows in set (0.00 sec)
COMMIT 語句提交事務,使得資料的更改永久生效
ROLLBACK 語句回滾事務,取消對資料的更改
SET autocommit 語句禁止或啟用當前會話預設的事務自動提交功能
--例子
mysql> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @A:=SUM(deptno) FROM test;
+-----------------+
| @A:=SUM(deptno) |
+-----------------+
| 150 |
+-----------------+
1 row in set (0.00 sec)
mysql> UPDATE test SET deptno=@A WHERE deptno=10;
Query OK, 1 row affected (0.05 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> commit;
Query OK, 0 rows affected (0.01 sec)
--關閉當前會話事務的自動提交功能
mysql> SET autocommit=0;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%commit%';
+--------------------------------+-------+
| Variable_name | Value |
+--------------------------------+-------+
| autocommit | OFF |
| innodb_commit_concurrency | 0 |
| innodb_flush_log_at_trx_commit | 1 |
+--------------------------------+-------+
3 rows in set (0.00 sec)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2086514/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL 5.7 LIMIT語句介紹MySqlMIT
- MySQL 5.7 PREPARE、EXECUTE、DEALLOCATE語句介紹MySql
- MySQL入門--事務控制語句MySql
- MySQL事務控制語句(學習筆記)MySql筆記
- MySQL 5.7 REPLACE語句的用法MySql
- MySQL 5.7許可權的介紹MySql
- MySQL事務提交的三個階段介紹MySql
- MySQL 5.7 NOT EXISTS用法介紹MySql
- MySQL 5.7 Performance Schema 介紹MySqlORM
- go 流程控制之switch 語句介紹Go
- javascript流程控制語句簡單介紹JavaScript
- Python的控制語句有哪些?常見內容介紹!Python
- MySQL 5.7 mysqldumpslow工具介紹MySql
- MySQL 5.5 SHOW PROFILE、SHOW PROFILES語句介紹MySql
- Innodbreadonly事務、MySQL5.7和Percona的事務改進MySql
- MySQL 5.7 EXPLAIN EXTENDED語句說明MySqlAI
- 簡單介紹MySQL開啟事務的兩種方式MySql
- awk 流程控制語句(if,for,while,do)詳細介紹While
- MySQL 5.5 LOCK TABLES 和 UNLOCK TABLES 語句介紹MySql
- MySQL 5.5 FLUSH TABLES WITH READ LOCK語句介紹MySql
- mongodb常用語句介紹MongoDB
- 精妙SQL語句介紹SQL
- MySQL 5.7 mysql_install_db工具介紹MySql
- MySQL在預設事務下各SQL語句使用的鎖分析MySql
- MySQL·引擎特性·InnoDB事務子系統介紹MySql
- MySQL 5.7 複製控制語句SET GLOBAL sql_slave_skip_counter說明MySql
- 超詳細的介紹Python語句Python
- MySQL 5.7 MyISAM併發插入特性介紹MySql
- MySQL 5.7 online DDL特性介紹MySql
- 分散式事務介紹分散式
- PostgreSQL 事務模型介紹SQL模型
- PostgreSQL 事務模型介紹SQL模型
- MySQL5.7 JSON型別使用介紹MySqlJSON型別
- MySQL SQL語句查詢執行過程的四個階段介紹MySql
- MySQL 5.7預設ONLY_FULL_GROUP_BY語義介紹以及故障解決MySql
- MySQL的語句MySql
- MySQL 5.7的主要特性簡介MySql
- Linux Shell Awk 流程控制語句(if,for,while,do)詳細介紹LinuxWhile