說明:如果您有任何疑問或想咨詢其他業務請撥打電話 400 685 0732
全網監測海量數據按需發布監測預警
實時把握輿情動態精準追溯信息源頭
myesl觸發器該如何使用,這個問題是許多在學習網頁設計的同學經常會遇到的問題,而且也是必須要掌握的一個知識點。所以今天我們就一起來了解一下有關myesl觸發器的相關知識點。
mysql觸發器——mysql如何使用觸發器
1. 語法:
createtriggertrigger_name
after/beforeinsert/update/deleteontb_name
foreachrow
begin
sql語句:(觸發的語句一句或者多句)
end;
2. 現有兩張表商品表goods和訂單表order來說明觸發器的工作原理;
3. 我們現在往goods表添加四條記錄:
insertintogoods(goods_name,goods_num)values(“手機”,20),(“電腦”,30),(“單反”,20);
4. 實現購買任意商品,對應的商品數量相應的減少:
分析:
監視地點:order表
監視事件:insert操作
觸發時間:在insert操作之后
觸發事件:update操作
createtriggert1
afterinserton`order`
foreachrow
begin updategoodssetgoods_num=goods_num-new.order_numwheregoods_id=new.goods_id;
end;
5. 如我們購買5個手機:
insertinto`order`(goods_id,order_num)values(1,5);
注:對于insert而言新增的行使用new來表示,行中的每一列的值用new.列名來表示
6. 撤銷訂單:
分析:
監視地點:order表
監視事件:delete操作
觸發時間:在delete操作之后
觸發事件:update操作
droptriggerifexistst1;
createtriggert1
afterdeleteon`order`
foreachrow
begin updategoodssetgoods_num=goods_num+old.order_numwheregoods_id=old.goods_id;
end;
如何利用mysql數據庫創建觸發器
1. 第一步,首先,在數據庫world下找到“觸發器”,鼠標右鍵“創建觸/發器”,彈出輸入新觸發器名稱,填寫名稱“city_trigger”,
2. 第二步,輸入完畢,單擊“創建”按鈕,生成city_trigger,如下圖所示:
3. 第三步,為了不影響其他表結構,這里新建一張數據庫表t_city_info,代碼如下:
createtable`world`.`t_city_info`(
`id`int(8)notnullauto_incrementcomment’id’,
`city_code`int(4)comment’城市編碼’,
`city_name`varchar(20)comment’城市名稱’,
`city_detail`varchar(100)comment’描述’,
primarykey(`id`)
)charset=utf8;
4. 第四步,數據庫表t_city_info創建完畢后,修改觸發器代碼,代碼如下:
delimiter$$
use`world`$$
droptrigger/*!50032ifexists*/`city_trigger`$$
create
/*!50017definer=’root’@’localhost’*/
trigger`city_trigger`beforeinserton`t_city_info`
foreachrowbegin
insertintot_tri_timevalues(now());
end;
$$
delimiter;
5. 第五步,修改`city_trigger`觸發器,點擊運行按鈕,并刷新數據庫,可以在觸發器文件夾下查看到`city_trigger`,
6. 第六步,然后,先t_city_info中插入一條數據,代碼如下:
insertintot_city_info(
id,
city_code,
city_name,
city_detail
)
values
(1000,100,’武漢’,’武漢市’);
點擊運行后,出現錯誤,錯誤代碼如下:
1queriesexecuted,0success,1errors,0warnings
查詢:insertintot_city_info(id,city_code,city_name,city_detail)values(1000,100,’武漢’,’武漢市’)
錯誤代碼:1146
table’world.t_tri_time’doesn’texist
執行耗時:0sec
傳送時間:0sec
總耗時:0.012sec
7. 第七步,由于t_tri_time不存在,導致出錯,接著創建t_tri_time數據庫表。
8. 第八步,再次執行插入語句,結果成功;然后,查詢t_tri_time數據庫表,代碼如下:
select*fromt_tri_time。
以上就是myesl觸發器該如何使用的所有內容,既然大家已經知道了該觸發器如何使用,接下來就需要大家多去練習才能夠完全的掌握這一個技巧。若大家還想了解更多與之有關的內容,歡迎關注我們文軍零銷的官網。
推薦閱讀
說明:如果您有任何疑問或想咨詢其他業務請撥打電話 400 685 0732