日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

一文帶你了解MySQL中觸發器的操作

瀏覽:229日期:2023-02-18 16:43:53
目錄
  • 概述
    • 介紹
    • 觸發器的特性
  • 操作—創建觸發器
    • 操作—new和old
      • 操作—查看觸發器
        • 操作—刪除觸發器
          • 注意事項

            概述

            介紹

            • 觸發器,就是一種特殊的存儲過程。觸發器和存儲過程一樣是一個能夠完成特定功能、存儲在數據庫服務器上的SQL片段,但是觸發器無需調用,當對數據庫表中的數據執行DML操作時自動觸發這個SQL片段的執行,無需手動條用。
            • 在MySQL中,只有執行insert,delete,update操作時才能觸發觸發器的執行
            • 觸發器的這種特性可以協助應用在數據庫端確保數據的完整性,日志記錄,數據校驗等操作。
            • 使用別名OLD和NEW來引用觸發器中發生變化的記錄內容,這與其他的數據庫是相似的。現在觸發器還只支持行級觸發,不支持語句級觸發。

            觸發器的特性

            • 什么條件會觸發:l、D、U
            • 什么時候觸發:在增刪改前或者后
            • 觸發頻率:針對每一行執行
            • 觸發器定義在表上,附著在表上

            操作—創建觸發器

            格式

            1.創建只有一個執行語句的觸發器

            2.創建有多個執行語句的觸發器

            操作

            演示

            create database if not exists test_trigger; use test_trigger;-- 用戶表create table `user` (	uid int primary key,	username varchar(50) not null,	password varchar(50) not null);-- 用戶信息操作日志表create table user_logs(	id int primary key auto_increment,	time timestamp,	log_text varchar(255)); -- 需求1:當user表添加一行數據,則會自動在user_log添加日志記錄-- 定義觸發器:trigger_test1create trigger trigger_test1 after insert on user for each row insert into user_logs values(null,now(),"有新用戶添加"); -- 在user表添加數據,讓觸發器自動執行insert into `user` values(1,"張三","123456");

            結果展示

            create database if not exists test_trigger; use test_trigger;-- 用戶表create table `user` (	uid int primary key,	username varchar(50) not null,	password varchar(50) not null);-- 用戶信息操作日志表create table user_logs(	id int primary key auto_increment,	time timestamp,	log_text varchar(255)); -- 需求1:當user表添加一行數據,則會自動在user_log添加日志記錄-- 定義觸發器:trigger_test1create trigger trigger_test1 after insert on user for each row insert into user_logs values(null,now(),"有新用戶添加"); -- 在user表添加數據,讓觸發器自動執行insert into `user` values(1,"張三","123456"); -- 需求2:當user表數據被修改時,則會自動在user_log添加日志記錄delimiter $$create trigger trigger_test2 after update on user for each row begin 	insert into user_logs values(null,now(),"有用戶信息被修改");end $$delimiter ; update `user` set password ="222222" where uid=1;

            需求2結果是

            操作—new和old

            格式

            MySQL中定義了NEW和oLD,用來表示觸發器的所在表中,觸發了觸發器的那一行數據,來引用觸發器中發生變化的記錄內容,具體地:

            觸發器類型觸發器類型的new和old使用insert型觸發器new表示將要或已經新增的數據update型觸發器OLD表示修改之前的數據,NEW表示將要或已經修改后的數據delete型觸發器OLD表示將要或者已經刪除的數據

            使用方法

            new.columname(columname為相應數據表某一列名)

            演示

            create trigger trigger_test3 after insert on userfor each row begin 	insert into user_logs  values(null,now(),concat("有新用戶添加,信息為:",new.uid,new.username,new.password)) ;end; insert into `user` values(2,"李四","24234");

            -- update create trigger trigger_test4 after update on user for each row begin 	insert into user_logs values(null,now(),concat_ws("--","用戶信息有修改,修改后為:",new.uid,new.username,new.password));end; update `user`  set password="66666" where uid=2;

            -- update create trigger trigger_test5 after update on user for each row begin 	insert into user_logs values(null,now(),concat_ws("--","用戶信息有修改,修改后為:",new.uid,new.username,new.password,															"用戶信息有修改,修改前為:",old.uid,old.username,old.password));end; update `user`  set password="988765654" where uid=2;

            操作—查看觸發器

            操作—刪除觸發器

            注意事項

            1.MYSQL中觸發器中不能對本表進行insert ,update ,delete操作,以免遞歸循環觸發

            2.盡量少使用觸發器,假設觸發器觸發每次執行1s,insert table 5o0o條數據,那么就需要觸發5oo次觸發器,光是觸發器執行的時間就花費了500s,而insert 50o條數據一共是1s,那么這個insert的效率就非常低了。

            3.觸發器是針對每一行的;對增刪改非常頻繁的表上切記不要使用觸發器,因為它會非常消耗資源。

            到此這篇關于一文帶你了解MySQL中觸發器的操作的文章就介紹到這了,更多相關MySQL觸發器內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

            標簽: MySQL
            相關文章:
            日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
            日韩一二三区在线观看| 国产欧美二区| 国产精品一在线观看| 国产亚洲网站| 青青久久av| 国产欧美啪啪| 911亚洲精品| 久久最新视频| 激情婷婷综合| 99久精品视频在线观看视频| 精品99久久| 国产人成精品一区二区三| 亚洲va久久久噜噜噜久久| 中文亚洲欧美| 日韩亚洲一区在线| 美腿丝袜亚洲一区| 国产亚洲精aa在线看| 亚洲永久精品唐人导航网址| 欧美日韩国产免费观看| 91av亚洲| 久久影院午夜精品| 国产成人精品一区二区三区在线| 国产精品欧美一区二区三区不卡| 欧美日韩亚洲一区| 欧美在线首页| 欧美国产先锋| 欧美精品97| 国产精选一区| 日韩在线黄色| 在线精品亚洲| 日韩精品亚洲专区| 日韩av成人高清| 91免费精品国偷自产在线在线| 91精品国产自产观看在线| 日韩视频一二区| 91福利精品在线观看| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲制服一区| 日韩欧美激情电影| 欧美精品影院| 欧美国产另类| 久久香蕉网站| 国产一区调教| 日韩欧美一区二区三区在线视频 | 亚洲91网站| 日韩精品a在线观看91| 国产欧美日韩一级| 国产成人调教视频在线观看| 成人日韩精品| 激情综合自拍| 久久高清一区| 91亚洲精品视频在线观看| 国产精品久久久久77777丨| 精品中文字幕一区二区三区 | 亚洲成人免费| 日韩在线卡一卡二| 国产欧美日韩亚洲一区二区三区| 精品中文在线| 亚洲国产成人二区| 亚洲欧美日韩高清在线| 亚洲精品美女91| 久久精品一区| 国产成人精选| 日韩视频二区| 国产精品视频首页| 日韩精品麻豆| 蜜桃视频在线观看一区| 日本成人中文字幕| 国产精选在线| 中文字幕乱码亚洲无线精品一区| 国产日产一区| 不卡专区在线| 中文无码久久精品| 欧美成a人片免费观看久久五月天| 日韩国产综合| 亚洲a成人v| 岛国av免费在线观看| 另类亚洲自拍| 国产精品久久久久久久久久白浆 | 群体交乱之放荡娇妻一区二区| 中日韩男男gay无套| 国产精品视频一区二区三区综合| 999久久久精品国产| 免费观看久久久4p| 精品亚洲a∨| 日韩精品一二三| 电影91久久久| 美女精品在线观看| 国产suv精品一区二区四区视频| 亚洲自拍另类| 国产成人精品一区二区三区免费| 久久亚洲风情| 久久电影tv| 国产精品婷婷| 青青青免费在线视频| 亚洲18在线| 水蜜桃久久夜色精品一区| 欧美专区18| 麻豆精品视频在线观看视频| 好看不卡的中文字幕| 91成人精品在线| 99riav1国产精品视频| 久久精品国产网站| 一区二区国产在线观看| 高清精品久久| 国产美女撒尿一区二区| 另类亚洲自拍| 久久在线视频免费观看| 日韩高清一级| 天堂网在线观看国产精品| 精品久久97| 日韩在线播放一区二区| 久久久久中文| 国产精品精品| 久久丁香四色| 欧美日韩a区| 视频一区中文字幕精品| 国产精品av一区二区| 久草免费在线视频| 亚洲最新无码中文字幕久久| 成人在线免费观看网站| 久久精品日韩欧美| 国产66精品| 风间由美中文字幕在线看视频国产欧美| 国产精品亲子伦av一区二区三区| 国产欧美69| 麻豆一区二区99久久久久| 精品国产亚洲一区二区三区大结局| 欧美成人一二区| 欧美激情福利| 福利精品一区| 四虎4545www国产精品| 亚洲午夜精品久久久久久app| 国产精品99一区二区| 黑丝一区二区三区| 久久不射网站| 日本a口亚洲| 国产精品密蕾丝视频下载| 国产精品手机在线播放| 欧美国产精品| 在线观看精品| 欧美日韩国产精品一区二区亚洲| 亚洲一区黄色| 乱人伦精品视频在线观看| 日韩三级精品| 国产伦理久久久久久妇女| 欧美韩一区二区| 福利在线免费视频| 九色精品91| 日韩中文字幕无砖| 国产精品久久久久久久久久齐齐 | 欧美片第1页| 不卡在线一区| 日韩1区2区3区| 国产一区国产二区国产三区| 视频福利一区| 久久亚洲不卡| 国产精品色婷婷在线观看| 色黄视频在线观看| 香蕉久久夜色精品国产| 97成人超碰| 精品72久久久久中文字幕| 欧美亚洲激情| 日韩精品中文字幕吗一区二区 | 香蕉精品999视频一区二区| 日韩精品第二页| av综合电影网站| 亚洲我射av| 91嫩草亚洲精品| 六月丁香综合| 精品视频网站| 欧美中文日韩| 精品国产欧美日韩| 欧美午夜精彩| 日韩动漫一区| 久久国产主播| 欧美一区=区三区| 999久久久精品国产| 97久久超碰| 亚洲a在线视频| 日本视频在线一区| 日韩一区三区| 日韩精品高清不卡| 日本精品在线中文字幕| 日韩精品一区二区三区中文字幕| 国产精品成人a在线观看| 亚洲欧美日本国产专区一区| 国产精品久久久久av蜜臀| 亚洲性图久久| 国产日本亚洲| 亚洲精品91| 欧美激情网址| 久久亚洲风情| 欧美日韩视频免费观看| 日韩欧美三区| 欧美理论视频| 国产成人精选| 日韩高清电影免费| 极品日韩av| 久久91视频|