<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        MySQL事務處理與應用簡析_MySQL

        來源:懂視網 責編:小采 時間:2020-11-09 19:26:46
        文檔

        MySQL事務處理與應用簡析_MySQL

        MySQL事務處理與應用簡析_MySQL:事務處理在各種管理系統中都有著廣泛的應用,比如人員管理系統,很多同步數據庫操作大都需要用到事務處理。比如說,在人員管理系統中,你刪除一個人員,你即需要刪除人員的基本資料,也要刪除和該人員相關的信息,如信箱,文章等等,這樣,這些數據庫操作語句
        推薦度:
        導讀MySQL事務處理與應用簡析_MySQL:事務處理在各種管理系統中都有著廣泛的應用,比如人員管理系統,很多同步數據庫操作大都需要用到事務處理。比如說,在人員管理系統中,你刪除一個人員,你即需要刪除人員的基本資料,也要刪除和該人員相關的信息,如信箱,文章等等,這樣,這些數據庫操作語句

        事務處理在各種管理系統中都有著廣泛的應用,比如人員管理系統,很多同步數據庫操作大都需要用到事務處理。比如說,在人員管理系統中,你刪除一個人員,你即需要刪除人員的基本資料,也要刪除和該人員相關的信息,如信箱,文章等等,這樣,這些數據庫操作語句就構成一個事務!
        刪除的SQL語句
        delete from userinfo where ~~~
        delete from mail where ~~
        delete from article where~~
        ~~
        如果沒有事務處理,在你刪除的過程中,假設出錯了,只執行了第一句,那么其后果是難以想象的!
        但用事務處理。如果刪除出錯,你只要rollback就可以取消刪除操作(其實是只要你沒有commit你就沒有確實的執行該刪除操作)
        一般來說,在商務級的應用中,都必須考慮事務處理的!
        查看inodb信息
        shell> /usr/local/mysql -u root -p
        mysql> show variables like "have_%"
        系統會提示:
        +------------------+-------+
        | Variable_name | Value |
        +------------------+-------+
        | have_bdb | YES |
        | have_crypt | YES |
        | have_innodb| YES |
        | have_isam | YES |
        | have_raid | YES |
        | have_symlink | YES |
        | have_openssl | NO |
        | have_query_cache | YES |
        +------------------+-------+
        8 rows in set (0.05 sec)
        如果是這樣的,那么我們就可以創建一張支持事務處理的表來試試了。
        MYSQL的事務處理功能!
        一直以來我都以為MYSQL不支持事務處理,所以在處理多個數據表的數據時,一直都很麻煩(我是不得不將其寫入文本文件,在系統重新加載得時候才寫入數據庫以防出錯)~今天發現MYSQL數據庫從4.1就開始支持事務功能,據說5.0將引入存儲過程^_^
        先簡單介紹一下事務吧!事務是DBMS得執行單位。它由有限得數據庫操作序列組成得。但不是任意得數據庫操作序列都能成為事務。一般來說,事務是必須滿足4個條件(ACID)
        原子性(Autmic):事務在執行性,要做到“要么不做,要么全做!”,就是說不允許事務部分得執行。即使因為故障而使事務不能完成,在rollback時也要消除對數據庫得影響!
        一致性(Consistency):事務得操作應該使使數據庫從一個一致狀態轉變倒另一個一致得狀態!就拿網上購物來說吧,你只有即讓商品出庫,又讓商品進入顧客得購物籃才能構成事務!
        隔離性(Isolation):如果多個事務并發執行,應象各個事務獨立執行一樣!
        持久性(Durability):一個成功執行得事務對數據庫得作用是持久得,即使數據庫應故障出錯,也應該能夠恢復!
        MYSQL的事務處理主要有兩種方法。
        1、用begin,rollback,commit來實現
        begin 開始一個事務
        rollback 事務回滾
        commit 事務確認
        2、直接用set來改變mysql的自動提交模式
        MYSQL默認是自動提交的,也就是你提交一個QUERY,它就直接執行!我們可以通過
        set autocommit=0 禁止自動提交
        set autocommit=1 開啟自動提交
        來實現事務的處理。
        但注意當你用 set autocommit=0 的時候,你以后所有的SQL都將做為事務處理,直到你用commit確認或rollback結束,注意當你結束這個事務的同時也開啟了個新的事務!按第一種方法只將當前的作為一個事務!
        個人推薦使用第一種方法!
        MYSQL中只有INNODB和BDB類型的數據表才能支持事務處理!其他的類型是不支持的!(切記!)
        MYSQL5.0 WINXP下測試通過~
        mysql> use test;
        Database changed
        mysql> CREATE TABLE `dbtest`(
        -> id int(4)
        -> ) TYPE=INNODB;
        Query OK, 0 rows affected, 1 warning (0.05 sec)
        mysql> select * from dbtest
        -> ;
        Empty set (0.01 sec)
        mysql> begin;
        Query OK, 0 rows affected (0.00 sec)
        mysql> insert into dbtest value(5);
        Query OK, 1 row affected (0.00 sec)
        mysql> insert into dbtest value(6);
        Query OK, 1 row affected (0.00 sec)
        mysql> commit;
        Query OK, 0 rows affected (0.00 sec)
        mysql> select * from dbtest;
        +------+
        | id |
        +------+
        | 5 |
        | 6 |
        +------+
        2 rows in set (0.00 sec)
        mysql> begin;
        Query OK, 0 rows affected (0.00 sec)
        mysql> insert into dbtest values(7);
        Query OK, 1 row affected (0.00 sec)
        mysql> rollback;
        Query OK, 0 rows affected (0.00 sec)
        mysql> select * from dbtest;

        +------+
        | id |
        +------+
        | 5 |
        | 6 |
        +------+
        2 rows in set (0.00 sec)
        mysql>
        *******************************************************************************************************************

        function Tran( $sql ) {
        $judge = 1;
        mysql_query('begin');
        foreach ($sql as $v) {
        if ( !mysql_query($v) ) {
        $judge = 0;
        }
        }
        if ($judge == 0) {
        mysql_query('rollback');
        return false;
        }
        elseif ($judge == 1) {
        mysql_query('commit');
        return true;
        }
        }

        ************************************************

        $handler=mysql_connect("localhost","root","");
        mysql_select_db("task");
        mysql_query("SET AUTOCOMMIT=0");//設置為不自動提交,因為MYSQL默認立即執行
        mysql_query("BEGIN");//開始事務定義
        if(!mysql_query("insert into trans (id) values('2')"))
        {
        mysql_query("ROOLBACK");//判斷當執行失敗時回滾
        }
        if(!mysql_query("insert into trans (id) values('4')"))
        {
        mysql_query("ROOLBACK");//判斷執行失敗回滾
        }
        mysql_query("COMMIT");//執行事務
        mysql_close($handler);
        ?>

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        MySQL事務處理與應用簡析_MySQL

        MySQL事務處理與應用簡析_MySQL:事務處理在各種管理系統中都有著廣泛的應用,比如人員管理系統,很多同步數據庫操作大都需要用到事務處理。比如說,在人員管理系統中,你刪除一個人員,你即需要刪除人員的基本資料,也要刪除和該人員相關的信息,如信箱,文章等等,這樣,這些數據庫操作語句
        推薦度:
        標簽: mysql 事務 簡析
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产午夜亚洲精品不卡| 美女裸免费观看网站| 久久国产免费一区| 亚洲精品中文字幕乱码三区| 久久亚洲精品AB无码播放| jizz免费观看| 国产精品久久久亚洲| 成全在线观看免费观看大全 | 久久大香香蕉国产免费网站| 亚洲精品国产精品乱码不99| a在线免费观看视频| 亚洲视频在线免费观看| 日韩在线播放全免费| 亚洲精品网站在线观看不卡无广告| 亚洲一区二区三区四区在线观看| 午夜亚洲国产理论片二级港台二级| 99精品视频在线观看免费播放 | 免费观看一区二区三区| 亚洲尹人九九大色香蕉网站| 免费精品国产自产拍在线观看图片| 久久精品国产亚洲av麻豆蜜芽 | 一个人看的www免费在线视频| 国产亚洲情侣一区二区无码AV| 亚洲国产成人精品无码区二本 | 久久午夜免费鲁丝片| 亚洲伊人久久大香线蕉啊| 在线观看人成网站深夜免费| 西西人体大胆免费视频| 亚洲成av人在线视| 免费电视剧在线观看| 免费人成大片在线观看播放电影 | 相泽亚洲一区中文字幕| 91精品国产免费入口| 亚洲国产精品婷婷久久| 成年大片免费视频| 久久精品亚洲AV久久久无码| 免费二级毛片免费完整视频| 国产AV无码专区亚洲AV麻豆丫| 德国女人一级毛片免费| 国产va免费精品| 久久精品国产亚洲AV忘忧草18|