• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            興海北路

            ---男兒仗劍自橫行
            <2008年4月>
            303112345
            6789101112
            13141516171819
            20212223242526
            27282930123
            45678910

            統(tǒng)計(jì)

            • 隨筆 - 85
            • 文章 - 0
            • 評(píng)論 - 17
            • 引用 - 0

            常用鏈接

            留言簿(6)

            隨筆分類

            隨筆檔案

            收藏夾

            全是知識(shí)啊

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            mysql5觸發(fā)器使用實(shí)例
            作者: falcon   發(fā)表日期: 2006-05-06 15:13   復(fù)制鏈接



            引言:

            觸發(fā)器的作用就不用說(shuō)了吧,也許你在sqlserver或者其他的數(shù)據(jù)庫(kù)里頭早就用過(guò)觸發(fā)器拉.所以這里直接介紹mysql5下怎 么使用觸發(fā)器.具體的語(yǔ)法細(xì)則這里也不說(shuō),可以到搜索引擎里頭搜索"mysql5 觸發(fā)器",一大堆的參考資料,不過(guò)基本上是一個(gè)出身,都只簡(jiǎn)單介紹了語(yǔ)法.沒有太多實(shí)際的例子.下面就從實(shí)際例子出發(fā)來(lái)學(xué)習(xí)一下哦.

            正文:

            我們先假設(shè)我們有這樣一個(gè)用戶信息表、用戶評(píng)價(jià)表:
            [說(shuō)明:我們的表可能建得不大規(guī)范,不要追究這個(gè),因?yàn)閮H僅是個(gè)演示觸發(fā)器的例子哦]

            表名:(用戶表)User_tab、(用戶評(píng)價(jià)表)User_score

            User_tab表結(jié)構(gòu)如下:

            字段名   字段類型           鍵     備注
            用戶編號(hào)(id)       int     pk     auto_increment
            登陸名(login_name) varchar(20)   not null    
            登陸密碼(login_pw)   varcahr(20) not null
            加密密碼(login_enc_pw)   varchar(32)
            注冊(cè)時(shí)間(reg_time)   datetime

            User_score表結(jié)構(gòu)如下:

            用戶編號(hào)(id)   int fk User_tab(id)
            用戶評(píng)價(jià)(score) int


            我們對(duì)該表有如下操作:

            1)在用戶注冊(cè)的時(shí)候需要用戶輸入登陸名、登陸密碼,用戶編號(hào),加密密碼和注冊(cè)時(shí)間由系統(tǒng)自動(dòng)更新
            2)假如我們要?jiǎng)h除某個(gè)用戶信息,那么該用戶的評(píng)價(jià)信息也得刪除,我們也讓系統(tǒng)自動(dòng)實(shí)現(xiàn)


            先創(chuàng)建這兩個(gè)表哦,代碼就不列出拉。

            下面我們?yōu)榱俗屜到y(tǒng)自動(dòng)實(shí)現(xiàn)這些東西,寫兩個(gè)觸發(fā)器

            1)觸發(fā)器一[更新操作]
            功能:在插入用戶的登陸名和登陸密碼進(jìn)入數(shù)據(jù)庫(kù)之后,系統(tǒng)自動(dòng)更新該用戶的注冊(cè)時(shí)間和加密密碼信息(用戶編號(hào)不用我們做,是因?yàn)槲覀冊(cè)O(shè)置了auto_increment,所以系統(tǒng)會(huì)自增)
            名字:User_tab_before_insert(表名_觸發(fā)時(shí)機(jī)_操作)
            代碼:


            Code:

            [Ctrl+A Select All]



            2)觸發(fā)器二[刪除操作]
            功能:在刪除某個(gè)用戶信息之后,系統(tǒng)自動(dòng)刪除該用戶的評(píng)價(jià)信息
            名字:User_tab_before_delete
            代碼:


            Code:

            [Ctrl+A Select All]



            總結(jié):

            到這里我們要用的觸發(fā)器的功能基本實(shí)現(xiàn)拉。我們通常要用戶要做的操作也就這些:自動(dòng)實(shí)現(xiàn)某些功能,以維護(hù)數(shù)據(jù)庫(kù)的完整性和一致性。
            需要補(bǔ)充的是,在創(chuàng)建那些需要觸發(fā)器更新的數(shù)據(jù)的時(shí)候,請(qǐng)不要設(shè)置not null,否則,由于在插入時(shí)會(huì)出錯(cuò)。因?yàn)樗谟|發(fā)器起作用之前為空。

            由于本人水平有限,如有問題,請(qǐng)批評(píng)指正,謝謝

            為了保持參照完整性,可以通過(guò)在對(duì)應(yīng)具有外鍵約束的字段后面增加ON DELETE CASCADE

            具體參考這個(gè)
            《在MySQL中利用外鍵實(shí)現(xiàn)級(jí)聯(lián)刪除!》
            http://www.chinaunix.net/jh/17/462977.html

            posted on 2008-03-14 16:11 隨意門 閱讀(515) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            亚洲午夜精品久久久久久app| 久久久久国色AV免费看图片| 国产精品VIDEOSSEX久久发布| 中文字幕成人精品久久不卡| 国产精品va久久久久久久| 国产精品激情综合久久| 亚洲伊人久久综合影院| 国产一区二区精品久久| 亚洲精品tv久久久久| 色8久久人人97超碰香蕉987| 国产精品日韩深夜福利久久 | 久久综合狠狠综合久久激情 | 中文字幕亚洲综合久久| 久久婷婷人人澡人人| 国产成人久久精品区一区二区| 久久激情亚洲精品无码?V| 久久WWW免费人成一看片| 国内精品久久久久久久久| 成人妇女免费播放久久久| 蜜桃麻豆WWW久久囤产精品| 国产精品免费看久久久香蕉| 久久久无码精品亚洲日韩京东传媒| 亚洲综合精品香蕉久久网97 | 久久久99精品成人片中文字幕 | 国产成人精品综合久久久久| 久久亚洲国产成人精品无码区| 久久人人妻人人爽人人爽| 久久国产成人精品国产成人亚洲| 久久人人爽人人人人爽AV| 久久精品国产一区二区三区不卡| 久久国产精品久久久| 国产亚洲精品美女久久久| 久久婷婷五月综合97色| 中文字幕久久波多野结衣av| 久久久精品久久久久影院| 亚洲国产视频久久| 色欲综合久久躁天天躁| 亚洲国产欧美国产综合久久| 精品久久久久久亚洲精品| 色综合久久无码中文字幕| 亚洲综合精品香蕉久久网|