模擬mysql觸發器的使用
一、新建遊戲表
create table `game` (
`id` int(11) not null auto_increment comment "主鍵id",
`name` varchar(255) not null comment"遊戲名稱",
) engine=myisam auto_increment=6 default charset=utf8;
二、插入測試資料
insert into game(id,name,online) values (1,'神仙道',1);
insert into game(id,name,online) values (2,'搜狗地圖',1);
insert into game(id,name,online) values (3,'免費**',1);
insert into game(id,name,online) values (4,'泡妞利器',1);
insert into game(id,name,online) values (5,'炫酷桌面',1);
三、查詢
select * from game;
1 神仙道1
2 搜狗地圖 1
3 免費** 1
4 泡妞利器 1
5 炫酷桌面 1
四、建立熱榜遊戲表
create table `hot_game` (
`id` int(11) not null auto_increment comment "主鍵id",
`game_id` int(11) not null comment "遊戲id",
primary key (`id`)
) engine=myisam default charset=utf8;
五、插入熱榜遊戲
insert into hot_game (id,game_id) values (1,1);
insert into hot_game (id,game_id) values (2,2);
insert into hot_game (id,game_id) values (3,3);
insert into hot_game (id,game_id) values (4,4);
insert into hot_game (id,game_id) values (5,5);
六、查詢熱榜遊戲
1 12 2
3 34 4
5 5
七、建立觸發器(遊戲下線,熱榜移除該遊戲)
create trigger t_hot_game before update on game for each row
begin if new.online = 0
then delete from hot_game where game_id = old.id;
end if;
end ;
八、查詢觸發器
show triggers;
九、遊戲下線 update game set online = 0 where id = 1;
十、查詢熱榜遊戲列表
select * from hot_game;
2 23 3
4 45 5
觸發器解釋: 用來對資料進行監控,當執行delete、update或insert操作時,可以使用觸發器來觸發某些操作來代替程式編碼,效率更高。
定義sql結束符
drop trigger if exists `updateegopriceondelete` ;
delimiter //
create
trigger `updateegopriceondelete` after delete on `customerinfo`
for each row begin
delete from egoprice where customerid=old.customerid;
end //
delimiter ;
其中delimiter 定好結束符為"$$", 然後最後又定義為";", mysql的預設結束符為";".
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 表名...