MySql 觸發器簡單例項

2022-06-26 19:09:12 字數 1797 閱讀 4916

一段時間不寫又忘了

/*

取消外來鍵約束

*/set foreign_key_checks=0;

/*建立c1表 主鍵id 欄位name

*/drop

table

ifexists

`c1`;

create

table

`c1` (

`id`

int(11) not

null

auto_increment,

`name`

varchar(120) character

set utf8mb4 default

null,

primary

key(`id`)

) engine

=memory default charset=

latin1;

/*c2與c1結構相同 去掉了id自增

*/drop

table

ifexists

`c2`;

create

table

`c2` (

`id`

int(11) not

null

, `name`

varchar(120) character

set utf8mb4 default

null,

primary

key(`id`)

) engine

=memory default charset=

latin1;

/*給c1建立乙個觸發器 名稱叫c1-insert

*//*

觸發條件是 after insert

*/drop

trigger

ifexists `c1-

insert

`;delimiter ;;

create

trigger `c1-

insert` after insert

on `c1` for each row begin

/*插入後的id

*/set

@id=

new.id;

/*插入後的name

*/set

@name

=new.name ;

insert

into `c2` (`id`, `name`) values (@id,@name); /*

插入到c2表

*/end

;;/*

給c1建立乙個觸發器 名稱叫c1-update

*//*

觸發條件是 after update

*/delimiter ;

drop

trigger

ifexists `c1-

update

`;delimiter ;;

create

trigger `c1-

update` after update

on `c1` for each row begin./*

修改前的id

*/set

@id=

old.id;

/*修改後的name

*/set

@name

=new.name;

update `c2` set `name`=

@name

where id =

@id; /*

更新到c2表

*/end

;;

MySQL 觸發器簡單例項

mysql 觸發器簡單例項 語法 create trigger 觸發器名稱 觸發器必須有名字,最多64個字元,可能後面會附有分隔符.它和mysql中其他物件的命名方式基本相象.觸發器有執行的時間設定 可以設定為事件發生前或後。同樣也能設定觸發的事件 它們可以在執行insert update或dele...

MySQL 觸發器簡單例項

語法 create trigger 觸發器名稱 觸發器必須有名字,最多64個字元,可能後面會附有分隔符.它和mysql中其他物件的命名方式基本相象.觸發器有執行的時間設定 可以設定為事件發生前或後。同樣也能設定觸發的事件 它們可以在執行insert update或delete的過程中觸發。on 表名...

MySQL 觸發器簡單例項

語法 create trigger 觸發器名稱 觸發器必須有名字,最多64個字元,可能後面會附有分隔符.它和mysql中其他物件的命名方式基本相象.觸發器有執行的時間設定 可以設定為事件發生前或後。同樣也能設定觸發的事件 它們可以在執行insert update或delete的過程中觸發。on 表名...