主頁 > 知識庫 > mysql 觸發(fā)器語法與應(yīng)用示例

mysql 觸發(fā)器語法與應(yīng)用示例

熱門標(biāo)簽:機器人打電銷電話 博樂電銷機器人 南寧外呼系統(tǒng)招商 上海市三維地圖標(biāo)注 400電話到哪辦理優(yōu)惠 怎么更改高德地圖標(biāo)注 鄭州網(wǎng)絡(luò)外呼系統(tǒng)價錢 云南大數(shù)據(jù)外呼系統(tǒng) 電話機器人是電腦呼號嗎

本文實例講述了mysql 觸發(fā)器語法與應(yīng)用。分享給大家供大家參考,具體如下:

例子:創(chuàng)建觸發(fā)器,記錄表的增、刪、改操作記錄

//創(chuàng)建user表;
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
 `id` bigint(20) NOT NULL AUTO_INCREMENT,
 `account` varchar(255) DEFAULT NULL,
 `name` varchar(255) DEFAULT NULL,
 `address` varchar(255) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
//創(chuàng)建對user表操作歷史表
DROP TABLE IF EXISTS `user_history`;
CREATE TABLE `user_history` (
 `id` bigint(20) NOT NULL AUTO_INCREMENT,
 `user_id` bigint(20) NOT NULL,
 `operatetype` varchar(200) NOT NULL,
 `operatetime` datetime NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

DELIMITER:改變輸入的結(jié)束符,默認(rèn)情況下輸入結(jié)束符是分號;,這里把它改成了兩個分號;;,這樣做的目的是把多條含分號的語句做個封裝,全部輸入完之后一起執(zhí)行,而不是一遇到默認(rèn)的分號結(jié)束符就自動執(zhí)行;

  • new:當(dāng)觸發(fā)插入和更新事件時可用,指向的是被操作的記錄
  • old: 當(dāng)觸發(fā)刪除和更新事件時可用,指向的是被操作的記錄

INSERT:

DROP TRIGGER IF EXISTS `tri_insert_user`;
DELIMITER ;;
CREATE TRIGGER `tri_insert_user` AFTER INSERT ON `user` FOR EACH ROW begin
  INSERT INTO user_history(user_id, operatetype, operatetime) VALUES (new.id, 'add a user', now());
end
;;
DELIMITER ;

UPDATE:

DROP TRIGGER IF EXISTS `tri_update_user`;
DELIMITER ;;
CREATE TRIGGER `tri_update_user` AFTER UPDATE ON `user` FOR EACH ROW begin
  INSERT INTO user_history(user_id,operatetype, operatetime) VALUES (new.id, 'update a user', now());
end
;;
DELIMITER ;

DELETE:

DROP TRIGGER IF EXISTS `tri_delete_user`;
DELIMITER ;;
CREATE TRIGGER `tri_delete_user` AFTER DELETE ON `user` FOR EACH ROW begin
  INSERT INTO user_history(user_id, operatetype, operatetime) VALUES (old.id, 'delete a user', now());
end
;;
DELIMITER ;

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總》

希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。

您可能感興趣的文章:
  • Mysql觸發(fā)器在PHP項目中用來做信息備份、恢復(fù)和清空
  • 一篇文章帶你深入了解Mysql觸發(fā)器
  • MySQL觸發(fā)器的使用
  • 詳解MySQL數(shù)據(jù)庫之觸發(fā)器
  • MySql視圖觸發(fā)器存儲過程詳解
  • mysql觸發(fā)器實時檢測一條語句進(jìn)行備份刪除思路詳解

標(biāo)簽:寧夏 秦皇島 恩施 白銀 澳門 杭州 定西 益陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql 觸發(fā)器語法與應(yīng)用示例》,本文關(guān)鍵詞  mysql,觸發(fā)器,語法,與,應(yīng)用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql 觸發(fā)器語法與應(yīng)用示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于mysql 觸發(fā)器語法與應(yīng)用示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章