文章出處

set autocommit=0,
當前session禁用自動提交事物,自此句執行以后,每個SQL語句或者語句塊所在的事務都需要顯示"commit"才能提交事務。

start transaction

指的是啟動一個新事務。

 

     在默認的情況下,MySQL從自動提交(autocommit)模式運行,這種模式會在每條語句執行完畢后把它作出的修改立刻提交給數據庫并使之永久化。事實上,這相當于把每一條語句都隱含地當做一個事務來執行。如果你想明確地執行事務,需要禁用自動提交模式并告訴MySQL你想讓它在何時提交或回滾有關的修改。
執行事務的常用辦法是發出一條START TRANSACTION(或BEGIN)語句掛起自動提交模式,然后執行構成本次事務的各條語句,最后用一條 COMMIT語句結束事務并把它們作出的修改永久性地記入數據庫。萬一在事務過程中發生錯誤,用一條ROLLBACK語句撤銷事務并把數據庫恢復到事務開 始之前的狀態。

       START TRANSACTION語句"掛起"自動提交模式的含義是:在事務被提交或回滾之后,該模式將恢復到開始本次事務的 START TRANSACTION語句被執行之前的狀態。(如果自動提交模式原來是激活的,結束事務將讓你回到自動提交模式;如果它原來是禁用的,結束 當前事務將開始下一個事務。)
如果是autocommit模式  ,autocommit的值應該為 1 ,不autocommit 的值是 0 ;請在試驗前 確定autocommit 的模式是否開啟

 

參考官方文檔:http://dev.mysql.com/doc/refman/5.7/en/commit.html


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()