1. 程式人生 > >mysql中關於事務測試

mysql中關於事務測試

開兩個客戶端視窗,就可以進行事務的測試。

//引擎
show ENGINES;
//測試事務(執行後事務回滾)
 BEGIN;
   SELECT * FROM zjs_bc_staff WHERE id='1' FOR UPDATE;
  UPDATE zjs_bc_staff SET name='小哄哄' WHERE id='1';  
 rollback;
 SELECT * FROM zjs_bc_staff WHERE id='1';
 END;
 //測試事務(執行後事務提交)
 BEGIN;
 UPDATE zjs_bc_staff SET name='小明' WHERE id='1';
 COMMIT;
 SELECT * FROM zjs_bc_staff WHERE id='1';
 
 show variables like 'autocommit';
 
查詢正在執行的事務:


SELECT * FROM information_schema.INNODB_TRX;
檢視正在鎖的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; 
檢視等待鎖的事務
SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;