程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql非事務表回滾失敗的現象

Mysql非事務表回滾失敗的現象

編輯:MySQL綜合教程

   執行ROLLBACK(回滾)時,如果收到下述消息,表示事務中使用的1個或多個表不支持事務:

  警告:某些更改的非事務性表不能被回滾。

  這些非事務性表不受ROLLBACK語句的影響。

  如果在事務中意外地混合了事務性表和非事務性表,導致該消息的最可能原因是,你認為本應是事務性的表實際上不是。如你試圖使用MySQLd服務器不支持的事務性存儲引擎(或用啟動選項禁止了它)創建表,就可能出現該情況。如果mysqld不支持存儲引擎,它將以MyISAM表創建表,這是非事務性表。

  可使用下述語句之一檢查表的標類型:

  SHOW TABLE STATUS LIKE 'tbl_name';

  SHOW CREATE TABLE tbl_name;

  使用下述語句,可檢查mysqld服務器支持的存儲引擎:

  SHOW ENGINES;

  也可以使用下述語句,檢查與你感興趣的存儲引擎有關的變量值:

  SHOW VARIABLES LIKE 'have_%';

  例如,要想確定InnoDB存儲引擎是否可用,可檢查have_innodb變量的值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved