MySQL數據庫默認的存儲引擎類型是MyISAM,這種存儲引擎類型不支持事務處理。php
在MySQL中,只有InnoDB存儲引擎類型的數據表才能支持事務處理。數據庫
所以,若是想讓MySQL支持事務處理,只要將數據表修改成InnoDB存儲引擎類型便可。操做步驟以下:日誌
1. 進入到phpMyAdmin主界面,在導航面板中選擇要轉換爲InnoDB存儲引擎類型的數據庫,例如選擇db_xuesheng數據庫。以下圖所示:事務
2. 在主界面頂端點擊「SQL」超連接,打開「在數據庫db_xuesheng運行SQL查詢」窗口。以下圖所示:io
3. 在窗口中輸入im
show engines;
SQL命令。數據
4. 在窗口的右下角點擊「執行」按鈕,打開「顯示查詢框」頁面。以下圖所示:查詢
5. 在「顯示查詢框」頁面中,咱們發現,InnoDB類型的Transactions項爲YES,這說明InnoDB類型的數據庫或數據表支持事務處理。db
下面,咱們只要將相關的數據表修改成InnoDB存儲引擎類型,就能支持事務處理操做了。英文
6. 在phpMyAdmin的導航面板中選擇要修改存儲引擎類型的數據庫db_xuesheng,而後在主界面頂端點擊「SQL」超連接,打開「在數據庫db_xuesheng運行SQL查詢」窗口。以下圖所示:
7. 在查詢窗口中輸入
ALTER TABLE tb_chengji ENGINE = InnoDB;
SQL命令。
若是輸入
ALTER TABLE `tb_chengji` ENGINE = InnoDB;
SQL命令也行。
`tb_chengji`兩邊的符號是在英文輸入的狀況下,按下該鍵打出來的:
8. 點擊右下角的「執行」按鈕,仍然打開「SQL」超連接窗口。以下圖所示:
9. 至此,成功將數據表由MyISAM存儲引擎類型轉換爲InnoDB存儲引擎類型。
咱們也能夠在數據表中執行事務處理操做了!
//我的理解
1:因爲MyISAM存儲引擎類型不支持事務,因此該類型通常都是系統表或者是日誌表,
2:若是表須要頻繁的寫操做,修改成InnoDB存儲引擎類型較好;