好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Mysql事務操作失敗如何解決

Mysql事務操作失敗如何解決

熱門標簽:寧波企業外呼系統收費 ps制作地圖標注gif 地圖標注人員兼職 電子地圖標注電話 聊城智能外呼系統運營商 成都優派外呼系統 上海智能外呼系統代理商 沈陽電銷外呼系統原理是什么 扎樣申請400電話

Mysql事務操作失敗如何解決

事務的原子性 :事務是數據庫的邏輯工作單位,事務中包含的各操作要么都做,要么都不做 。

要實現事務的原子性,單單靠一條commit或是rollback命令還是不行的,因為例如commit命令它只是將一個事務中執行成功的DML語句提交給數據庫里。如果要實現事務的原子性,則就需要commit和rollback命令配合上程序上的一個業務邏輯才能可以,具體業務邏輯代碼如下示例代碼:

1.現象

     程序中打開了事務進行插入,但是沒有commit,表中的數據已經存在,就是回滾也不能刪除插入的數據

2.原因

    本表的Storage Engine 為myisam,不是innoDB,不支持事務處理 rollback()

3.解決方法

    使用 alter table xxxx engine = innoDB ; 將表改為 InnoDB 引擎,結果回滾正常。

4.代碼

 private void testCrud() {
     Connection conn = null;      //連接對象
     PreparedStatement pstmt = null;  //預編譯的SQL語句對象
      try{
        //加載MySQL驅動程序
        Class.forName("com.mysql.jdbc.Driver");
        //連接字符串
        String url = "jdbc:mysql://localhost:3306/test";
        //建立數據庫連接
        conn = DriverManager.getConnection(url,"root","");
        //設置事務的隔離級別
        // conn.setTransactionIsolation(Connection. TRANSACTION_REPEATABLE_READ);
        //設置自動提交為false,開始事務
        conn.setAutoCommit(false);
        //帶參數的更新語句
        String sql = "INSERT INTO user_info (username ,password ,age )values(?,?,?)";
        //準備語句
        pstmt = conn.prepareStatement(sql);
        //綁定參數,執行更新語句,將張三的賬戶金額減去1000元
        pstmt.setString(1, "zhangui");
        pstmt.setString(2, "1111");
        pstmt.setInt(3, 300);
        pstmt.execute();
        
        //綁定參數,執行更新語句,將李四的賬戶金額增加1000元
        // pstmt.setString(1, "zzzzzzzzzzzzzzzzz"); //綁定了非法參數
        //pstmt.setString(2, "1111111111");
        //pstmt.setInt(3, 500);
        //pstmt.execute(); //將拋出SQL異常
        //提交事務
        //conn.commit();
        System.out.println("事務已提交,轉賬成功!");
        //關閉語句、連接
        pstmt.close(); conn.close();
      }catch(Exception e){
        try{
          conn.rollback();  //回滾事務
          System.out.println("事務回滾成功,沒有任何記錄被更新!");
        }catch(Exception re){
          System.out.println("回滾事務失敗!");
        }
        e.printStackTrace();
      }finally{
        if(pstmt!=null) try{pstmt.close();}catch(Exception ignore){}
        if(conn!=null) try{conn.close();}catch(Exception ignore){}
      }
    
  }

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • Mysql事務處理詳解
  • 通過實例分析MySQL中的四種事務隔離級別
  • 解決Mysql收縮事務日志和日志文件過大無法收縮問題
  • mysql的存儲過程、游標 、事務實例詳解
  • PHP mysqli事務操作常用方法分析
  • MySQL四種事務隔離級別詳解
  • NodeJs使用Mysql模塊實現事務處理實例
  • MySQL數據庫事務隔離級別詳解
  • MySQL事務的基礎學習以及心得分享

標簽:林芝 AXB 內江 咸寧 朔州 三明 宿州 汕頭

巨人網絡通訊聲明:本文標題《Mysql事務操作失敗如何解決》,本文關鍵詞  Mysql,事務,操作,失敗,如何,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mysql事務操作失敗如何解決》相關的同類信息!
  • 本頁收集關于Mysql事務操作失敗如何解決的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 日本版羞辱护士在线观看| 李氏被婢女扶着挨C| 亚洲色P| 久热中文字幕在线观看| 色婷婷综合网| 国产高清天干天天视频| 国模少妇一区二区三区咪咕 | 大肚孕play高H孕期双性| 97精品国产97久久久久久春色| 阿娇日出水了好爽| 成人国产片女人爽到高潮| 欧美AV色香蕉一区二区超碰| 91精品国产乱码久久久久久蜜臀| 久久免费手机视频| 久久久久久精品无码国语婚闹| 亚洲第一免费| 奔跑吧玩遍女嘉宾高H小说| 8x拨牐拨牐永久华人首页| 穿jk白丝被粉嫩脚底| 夫洗澡公强我了在线观看| 婷婷人人爽人人做人人添| 亚洲人成人77777线观看| 亚洲精品久久久久国产体育生 | 不戴奶罩的邻居HD中文电影| 亚洲乱熟女一区二区三区山口珠理| 国内黄色一级片| 大尺度黄色小说| 亚洲国产精品久久久久日本竹山梨| 亚洲va中文va欧美va爽爽| 帅男无套gay16| 欧美极品video粗暴| 甘婷婷全部三级裸体电影| 日本一级A片玉足视频| 精品人伦一区二区三区蜜桃免费| 国产福利一区二区三区| 黄色a∨| 亚洲精品TV久久久久久久久久 | 成人精品一区二区三区校园激情 | 日肥女| 黄色的网站| 羞耻play调教打屁股撅起来|