日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql中使用触发器实例

發布時間:2023/12/20 数据库 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql中使用触发器实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql中使用觸發器實例-函數、事件、定時器

文章目錄

  • mysql中使用觸發器實例-函數、事件、定時器
  • 一、需求
  • 二、實操
    • 1.基本操作
    • 2.具體操作
  • 總結


一、需求

1.定時從A放統計數據到B
2.詳情表統計數據到總表
詳情表table_xq

字段名稱字段類型
IDString
create_timeDateTime
PlaceString

統計表——table_tj

字段名稱字段類型
IDString
create_timeDateTime
PlaceString
Person_numString

二、實操

1.基本操作

查詢數據

select * from table_xq where DATE_FORMAT(create_time,'%Y-%m-%d')='2022-01-20';

查詢事件是否開啟(名稱固定)

SHOW VARIABLES LIKE 'event_scheduler';

兩個方法開啟事件

set GLOBAL e_test=1; set GLOBAL event_scheduler=OFF;

2.具體操作

創建函數:

CREATE PROCEDURE pro_test() begin DECLARE n_total int DEFAULT 0;#詳情表中的num DECLARE num_per int DEFAULT 0;#已存在的num select count(*) into n_total from table_xq where DATE_FORMAT(table_xq.create_time,'%Y-%m-%d')=CURDATE(); if(n_total>0)THEN select person_num into num_per from table_tj where DATE_FORMAT(table_xq.create_time,'%Y-%m-%d')=CURDATE(); if num_per is NULL OR num_per='' THEN update table_tj set person_num=n_total where DATE_FORMAT(table_xq.create_time,'%Y-%m-%d')=CURDATE(); ELSEIF n_total>num_per then insert into table_tj (ID,person_num,palce,create_time)values(REPLACE(UUID(),'-',''),n_total,'地點',CURDATE()); END IF; END IF; END

創建定時器
使用mysql菜單-其他-事件,添加內容即可。

總結

在做該需求時由于外網找不到詳細的資源,都是一點點自己摸索出來的,分享給大家,如果內容存在出入,請指出,謝謝!

總結

以上是生活随笔為你收集整理的mysql中使用触发器实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。