最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mysql中的觸發(fā)器定義與使用

 更新時間:2022年11月30日 16:20:59   作者:菜到極致就是渣  
MySQL?的觸發(fā)器和存儲過程一樣,都是嵌入到?MySQL?中的一段程序,是?MySQL?中管理數(shù)據(jù)的有力工具,本文給大家詳細(xì)介紹mysql觸發(fā)器的定義語法知識,感興趣的朋友一起看看吧

一、觸發(fā)器的介紹

觸發(fā)器是與表有關(guān)的數(shù)據(jù)庫對象,指在insert/update/delete 之前或之后,觸發(fā)并執(zhí)行

觸發(fā)器中定義的SQL語句集合。觸發(fā)器的這種特性可以協(xié)助應(yīng)用在數(shù)據(jù)庫端確保數(shù)據(jù)的

完整性,日志記錄,數(shù)據(jù)校驗等操作。

使用別名old和new來引用觸發(fā)器中發(fā)生變化的記錄內(nèi)容,這與其它的數(shù)據(jù)庫是相似的。

現(xiàn)在觸發(fā)器還只支持行級觸發(fā),不支持語句級觸發(fā)。

  觸發(fā)器類型                   new和old
 insert型觸發(fā)器        new表示將要揮著已經(jīng)新增的數(shù)據(jù)
 update型觸發(fā)器        old表示修改之前的數(shù)據(jù),new表示將要或者已經(jīng)修改后的數(shù)據(jù)
 delete型觸發(fā)器        old表示將要或者已經(jīng)刪除的數(shù)據(jù)

二、觸發(fā)器的語法

 語法:
   1:創(chuàng)建觸發(fā)器語句
   create trigger 觸發(fā)器名稱 before/after  insert/update/delete on 表名 for each row
    begin
      sql語句
    end;
   這里的after和before表示的是增刪改之后還是之前觸發(fā)的
   2:查看觸發(fā)器語句
     show triggers;
   3:刪除觸發(fā)器
     drop trigger 數(shù)據(jù)庫名.觸發(fā)器的名字;(如果沒有指定數(shù)據(jù)庫的名字,那么默認(rèn)是當(dāng)前數(shù)據(jù)庫)

(1)insert觸發(fā)器

create table user_logs(
    opera_text varchar(1000) comment '插入的·內(nèi)容',
    opera_time datetime comment '插入的時間',
    opera varchar(20) comment '操作的類型,insert/delete/update'
 );
create trigger tb_user_insert_tigger
    after insert on sp for each row
    begin
        insert into user_logs(opera_text, opera_time, opera)
        values(concat('插入的名字=',new.name,',插入的年齡=',new.age),now(),'insert');
    end;
show triggers;
insert into sp(age, name) values (100,'大魔王');

(2)update觸發(fā)器

create trigger tb_user_update_trigger
    after update on sp for each row
    begin
        insert into user_logs(opera_text, opera_time, opera) values
        (concat('更新前的名字=',old.name,' 更新前的年齡=',old.age,' 更新后的名字=',new.name,' 更新后的年齡=',new.age),now(),'update');
    end;
show triggers;
update sp set age=1000 where name='李四';

(3)delete觸發(fā)器

create trigger tb_user_delete_trigger
    after delete on sp for each row
    begin
        insert into user_logs(opera_text, opera_time, opera)
            values(concat('刪除的名字=',old.name,' 刪除前的年齡=',old.age),now(),'delete');
    end;
show triggers;
delete from sp where name='李四';

到此這篇關(guān)于Mysql中的觸發(fā)器定義與使用的文章就介紹到這了,更多相關(guān)MySQL觸發(fā)器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL數(shù)據(jù)庫Event定時執(zhí)行任務(wù)詳解

    MySQL數(shù)據(jù)庫Event定時執(zhí)行任務(wù)詳解

    這篇文章主要介紹了MySQL數(shù)據(jù)庫Event定時執(zhí)行任務(wù)
    2017-12-12
  • mysql 轉(zhuǎn)換NULL數(shù)據(jù)方法(必看)

    mysql 轉(zhuǎn)換NULL數(shù)據(jù)方法(必看)

    下面小編就為大家?guī)硪黄猰ysql 轉(zhuǎn)換NULL數(shù)據(jù)方法(必看)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • MySQL 的 20+ 條最佳實踐

    MySQL 的 20+ 條最佳實踐

    數(shù)據(jù)庫操作是當(dāng)今 Web 應(yīng)用程序中的主要瓶頸。 不僅是 DBA(數(shù)據(jù)庫管理員)需要為各種性能問題操心,程序員為做出準(zhǔn)確的結(jié)構(gòu)化表,優(yōu)化查詢性能和編寫更優(yōu)代碼,也要費盡心思。 在本文中,我列出了一些針對程序員的 MySQL 優(yōu)化技術(shù)
    2016-12-12
  • mysql中int、bigint、smallint 和 tinyint的區(qū)別詳細(xì)介紹

    mysql中int、bigint、smallint 和 tinyint的區(qū)別詳細(xì)介紹

    最近使用mysql數(shù)據(jù)庫的時候遇到了多種數(shù)字的類型,主要有int,bigint,smallint和tinyint;接下來將詳細(xì)介紹以上三種類型的應(yīng)用
    2012-11-11
  • MySQL limit子句用法及優(yōu)化小結(jié)

    MySQL limit子句用法及優(yōu)化小結(jié)

    limit在獲取到滿足條件的數(shù)據(jù)量時即會立刻終止SQL的執(zhí)行,本文主要介紹了MySQL limit子句用法及優(yōu)化小結(jié),具有一定的參考價值,感興趣的可以了解一下
    2024-09-09
  • 詳解MySQL中的字符集和排序規(guī)則

    詳解MySQL中的字符集和排序規(guī)則

    MySQL字符集用于定義數(shù)據(jù)庫中存儲的文本數(shù)據(jù)的編碼格式,而排序規(guī)則則用于確定如何對文本數(shù)據(jù)進行排序和比較,本文將給大家講講MySQL中的字符集和排序規(guī)則,需要的朋友可以參考下
    2023-09-09
  • mysql外鍵的三種關(guān)系實例詳解

    mysql外鍵的三種關(guān)系實例詳解

    這篇文章主要介紹了mysql外鍵的三種關(guān)系,結(jié)合實例形式詳細(xì)分析了mysql外鍵多對一、多對多、一對一3種關(guān)系及相關(guān)使用技巧,需要的朋友可以參考下
    2020-01-01
  • 解決SQL文件導(dǎo)入MySQL數(shù)據(jù)庫1118錯誤的問題

    解決SQL文件導(dǎo)入MySQL數(shù)據(jù)庫1118錯誤的問題

    在使用Navicat導(dǎo)入SQL文件時,有時會遇到報錯問題,這通常與MySQL版本差異或嚴(yán)格模式設(shè)置有關(guān),若報錯提示rowsize長度過長,可能是因為MySQL的嚴(yán)格模式開啟導(dǎo)致,解決方法是檢查嚴(yán)格模式是否開啟,若開啟則需關(guān)閉
    2024-10-10
  • mysql 不能插入中文問題

    mysql 不能插入中文問題

    當(dāng)向mysql5.5插入中文時,會出現(xiàn)類似錯誤 ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column
    2011-09-09
  • MySQL為數(shù)據(jù)表建立索引的原則詳解

    MySQL為數(shù)據(jù)表建立索引的原則詳解

    這篇文章主要為大家詳細(xì)介紹了MySQL為數(shù)據(jù)表建立索引的原則,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03

最新評論

磴口县| 临澧县| 忻城县| 广平县| 阜阳市| 崇阳县| 上林县| 名山县| 邢台市| 邢台市| 江西省| 马鞍山市| 宜都市| 南川市| 德化县| 房产| 大港区| 岗巴县| 临邑县| 陕西省| 七台河市| 邯郸市| 原阳县| 唐山市| 邓州市| 姚安县| 沙雅县| 绥滨县| 大庆市| 宜川县| 阳新县| 延长县| 芜湖市| 柘荣县| 兴义市| 德江县| 洪江市| 曲靖市| 道孚县| 台东市| 保山市|