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

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

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

瀏覽:225日期: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久久,三上悠亚国产精品一区二区三区
            国产亚洲观看| 综合日韩在线| 红桃视频国产一区| 国内精品麻豆美女在线播放视频| 欧美日韩亚洲一区在线观看| 蜜桃一区二区三区在线观看| 亚洲欧美日本国产专区一区| 亚洲二区精品| 欧美在线资源| 中文久久精品| 视频一区二区三区在线| 亚洲一级二级| 999久久久亚洲| 日韩精品2区| 最近高清中文在线字幕在线观看1| 国产精品一级在线观看| 国产精品色婷婷在线观看| 91精品啪在线观看国产爱臀| 伊人成人网在线看| 模特精品在线| 日韩中文av| 久久精品 人人爱| 日本午夜精品视频在线观看| 国产日韩欧美一区在线| 国产精品17p| 国产91在线播放精品| 成人久久久久| 天堂网在线观看国产精品| 日韩视频中文| 亚洲一级在线| 日韩精品亚洲一区二区三区免费| 青青草91久久久久久久久| 久久不见久久见免费视频7| 日韩和欧美一区二区三区| 欧美激情日韩| 欧美亚洲在线日韩| 亚洲三级网站| 国产一精品一av一免费爽爽| 老鸭窝一区二区久久精品| 亚洲黄色免费av| 亚洲调教视频在线观看| 免费成人在线影院| 中文欧美日韩| 欧美成人一二区| 亚洲伊人精品酒店| 国产欧美激情| 欧美日韩精品一区二区三区在线观看| 欧美成人亚洲| 美女av在线免费看| 国产精品成人自拍| xxxxx性欧美特大| 日韩专区视频网站| 日本午夜精品| 电影亚洲精品噜噜在线观看| 在线综合视频| 国产伦乱精品| 精品久久一区| 一区二区国产在线| 亚洲少妇诱惑| 国产精品a级| 91视频一区| 天堂中文在线播放| 不卡中文一二三区| 午夜欧美在线| 欧美精品福利| 国产免费av一区二区三区| 少妇高潮一区二区三区99| 久久激情五月婷婷| 亚洲人成精品久久久| 激情欧美日韩一区| 欧美亚洲精品在线| a国产在线视频| 精品国产亚洲日本| 欧洲亚洲一区二区三区| 日本韩国欧美超级黄在线观看| 亚洲欧美网站| 综合亚洲色图| 国产精品18| 亚洲成av在线| 国产精品久久| 免费在线亚洲欧美| 视频在线不卡免费观看| 日韩一区二区三区在线免费观看| 日韩在线观看| 亚洲主播在线| 亚洲精品日韩久久| 国产欧美日韩免费观看| 日本久久精品| 91高清一区| 91精品尤物| 欧美天堂视频| 亚洲精品美女91| 成人综合一区| 美女视频免费精品| 国产乱码精品一区二区三区四区 | 国产激情一区| 麻豆网站免费在线观看| 在线一区二区三区视频| 久久久久观看| 日韩在线观看一区二区三区| av一区在线| 91精品国产经典在线观看| 亚洲精品免费观看| 日韩欧美午夜| 夜夜嗨一区二区| 免费看黄色91| 婷婷六月综合| 国产精品美女| 伊人久久国产| 国产资源在线观看入口av| 亚洲综合不卡| 97精品视频在线看| 欧美日本二区| 狠狠久久婷婷| 在线一区二区三区视频| 国产麻豆精品久久| 91精品亚洲| 综合激情视频| 国产精品亚洲综合色区韩国| 中国字幕a在线看韩国电影| 欧美jjzz| 九九99久久精品在免费线bt| 国产中文一区| 久久精品国产成人一区二区三区| 五月天久久久| 免费一级欧美在线观看视频| 视频在线在亚洲| 亚洲精品福利电影| 日韩激情av在线| 午夜久久一区| 久草免费在线视频| 国产精品1区| 日本亚洲最大的色成网站www| 伊人精品一区| 国产亚洲精品自拍| www.51av欧美视频| 午夜亚洲精品| 三级在线观看一区二区| 免费精品国产| 欧美特黄一区| 伊人久久成人| 99国产精品99久久久久久粉嫩| 久久久精品五月天| 国产精品高颜值在线观看| 国产精品原创| 亚洲网址在线观看| 中文字幕av一区二区三区人| 狠狠爱成人网| 爽好久久久欧美精品| 蜜桃视频在线观看一区| 青青草国产精品亚洲专区无| 国产色噜噜噜91在线精品| 电影91久久久| 国精品一区二区| 亚洲香蕉久久| 欧美a在线观看| 国产精品99免费看| 日韩精品免费视频人成| 黄色网一区二区| 国产精品美女久久久| 国产欧美自拍一区| 欧美精选视频一区二区| 伊人精品一区| 日韩成人午夜精品| 丝袜诱惑一区二区| 鲁大师影院一区二区三区| 日韩成人在线看| 999久久久91| 日韩精品三区四区| 色天使综合视频| 国产精一区二区| 西西人体一区二区| 日韩国产在线| 免费在线欧美黄色| 黄色aa久久| 在线综合亚洲| 日韩国产在线| 日韩欧美二区| 日韩av不卡一区二区| 激情六月综合| 美女av在线免费看| 日韩va亚洲va欧美va久久| 美女毛片一区二区三区四区 | 日韩午夜电影| 中文在线а√在线8| 国产精品日韩精品在线播放| 蜜桃一区二区三区在线观看| 国产精品99一区二区| 国产成人黄色| 国产精品一区2区3区| 欧美日韩亚洲一区二区三区在线| 国产综合色区在线观看| 精品99在线| 久久av电影| 国产精品极品在线观看| 日本成人一区二区| 久久亚洲在线| 在线看片不卡| 蜜臀久久99精品久久久久久9| 日韩一区二区三区在线免费观看|