Mysql中對于觸發(fā)器的設(shè)置案例詳細說明
發(fā)表時間:2023-07-21 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]觸發(fā)器的操作:1.觸發(fā)器的創(chuàng)建:(1).創(chuàng)建包含一條語句的觸發(fā)器create trigger trigger_name before after trigger_event on table_nam...
觸發(fā)器的操作:
1.觸發(fā)器的創(chuàng)建:
(1).創(chuàng)建包含一條語句的觸發(fā)器
create trigger trigger_name before after trigger_event on table_name for each row trigger_stmt;
trigger_event表示操作事件(insert,update,delete);
trigger_stmt表示執(zhí)行的語句
例子:
create trigger tri_test after insert on t1 for each row insert into t1_log values(USER(),'insert record into t1',now());
// 表示的是在對表t1的每一行進行插入操作之后,在表t1_log中插入一條數(shù)據(jù),數(shù)據(jù)是values之后的內(nèi)容,USER()指的是當(dāng)前的用戶(內(nèi)置函數(shù)),now()當(dāng)前時間.
(2).創(chuàng)建包含多條語句的觸發(fā)器
create trigger trigger_name before after trigger_event on table_name for each row BEGIN trigger_stmt end;
例子:
delimiter $$
create trigger tri_test
after insert on t1 for each row
BEGIN
insert into t1_log values(USER(),'after insert table t1',now());
insert into t1_log values(USER(),'after insert table t1',now());
END
$$
執(zhí)行完之后執(zhí)行 delimiter ;恢復(fù)分隔符 ;
delimiter指的是切換分隔符,因為多條語句之間是用分號隔開,所以要切換默認分隔符,執(zhí)行完語句之后再切換回去.
2.查看觸發(fā)器:
show triggers /G;
在information_schema數(shù)據(jù)庫中查詢
use information_schema;
select * from TRIGGERS where trigger_name = 'tri_test' \G;
3.觸發(fā)器的修改
觸發(fā)器是不能修改的,只能將原來的刪除,然后重新建立新的觸發(fā)器.
4.觸發(fā)器的刪除:
drop trigger trigger_name;
以上就是Mysql中關(guān)于觸發(fā)器的操作實例詳解的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識。