新聞中心
MySQL中設(shè)置自動提交失效如何解決,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:國際域名空間、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、港北網(wǎng)站維護(hù)、網(wǎng)站推廣。
問題很簡單 JDBC 連接mysl 獲取connnection 然后conn.setAutoCommit(false);
重點(diǎn)來了 現(xiàn)在是要插入一條記錄
inset1......然后做一些邏輯處理,更新另一條數(shù)據(jù) update2.。。
最后conn.commit();當(dāng)然catche里面還有 conn.rollback()。
DEBUG時候發(fā)現(xiàn) insert1執(zhí)行完,已經(jīng)有值了。。原以為是隔離級別的問題,沒在意。然后繼續(xù)執(zhí)行邏輯處理,
出現(xiàn)異常conn.reollback()了。。此時再一看 插入的數(shù)據(jù)沒有回滾。代碼檢查N次沒查出問題。
無奈又要問度娘,谷爺。。。此段時間乃是煎熬啊~~~~ www.2cto.com
最后還是有成果的。找到了個表存儲引擎的文章。
show create table 表名;
可以看到ENGINE=MyISAM
MyISAM是指Mysql的默認(rèn)存儲引擎,當(dāng)create創(chuàng)建新表時,未指定新表的存儲引擎時,默認(rèn)使用Myisam。
MyISAM管理非事務(wù)表。它提供高速存儲和檢索,以及全文搜索能力
既然有非事務(wù)表,就應(yīng)該有支持事務(wù)的表了。沒錯,度娘又告訴我了 InnoDB
InnoDB存儲引擎提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是對比Myisam的存儲引擎,InnoDB寫的處理效率差一些并且會占用更多的磁盤空間以保留數(shù)據(jù)和索引。
那就改吧。。
alter table 表名 engine=InnoDB;
看完上述內(nèi)容,你們掌握mysql中設(shè)置自動提交失效如何解決的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章名稱:mysql中設(shè)置自動提交失效如何解決
標(biāo)題鏈接:http://www.dlmjj.cn/article/gshhgd.html


咨詢
建站咨詢
