




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、關于mysql觸發器、存儲過程的用法有什么很多程序員在出去面試的時候都會存在這樣一個問題,就是筆試題中對于sql語句的考察,很多關鍵字的寫法忘記了甚至是完全沒有用過,但是如果你能百度一下或者看一下之前寫的代碼又會瞬間想起來,這其實是一個比較尷尬的問題,僅僅的因為一個關鍵字就能否定你的sql能力或者代碼能力嗎?當然這是很片面的。但是sql的關鍵字又實在是太多,一個一個整理未免太多復雜,所以我這里不過多的介紹了,碰到了,自己查下資料即可。今天主要介紹的是觸發器、存儲過程的用法。觸發器的語法:Delimiter $Create trigger 觸發器名稱After/before insert/upd
2、ate/delete on 表名For each row #每隔一行執行一次動作,而不是對整個表(mysql中一般是固定寫法Beginsql語句End$Delimiter ;解釋一下,上面的語法意思:在執行表的增刪改之后或之前,完成事件的觸發下面,我們看下具體的例子,場景如下: 當我們向訂單中插入數據時,商品表中的對應商品要減少對應的數量,這里我們使用觸發器來實現;觸發器代碼: new.order_count 和new.g_id都是訂單表中新傳入的數據,根據新插的值進行動態更新執行如下代碼: 意為在我向訂單表中插入數據之后,觸發更新商品表的sql語句插入前: 插入后: 到這里,觸發器的實現就已
3、經完全寫完了。但是,這里還可能存在一種情況,用戶如果不想買了,我們應該如何處理,你需要把訂單表的記錄刪除,然后把對應的商品數量加回去。觸發器: 需要注意的是我們這里不能再使用new.order_count 和new.g_id,而應該換成對應的old,因為我們要刪除的信息不是新插入的,而是用的之前的,這一點應該是不難理解的。執行如下代碼: 刪除后: 可以看到,此時的面包數量已經加回來了;上述代碼寫得都是先執行增刪改,再進行觸發,下面我們演示先觸發,再進行對應的增刪改結合具體實例:用戶在購買的時候,我們實際開發中需要先對商品數量進行判斷,如果,商品庫存不足或者小于訂單購買量,此時應提示庫存不足。同樣,需要用到before關鍵字,意為先觸發事件,再進行增刪改觸發器代碼如圖: 執行下面代碼: 插入前: 插入后: 可以看到,我們明明購買了10個,但是庫存只有8個,所以經過判斷我們最多只能購買8個,當然,這里呢,也會存在一個問題,這個sql里面的8寫的并不規范,正常來講,應該先查詢數量,再判斷,這里只是解釋after和before 的區別。存儲過程語法:Create procedure 存儲過程名稱(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二手房買賣合同違約責任追究協議
- 財務報表風險敞口應對效果評估合同
- 材料疲勞斷裂數據校正合同
- 生態農業園區場地合作經營與產品銷售協議
- 邊疆地區古代商業貿易考古合同
- 高端裝備制造廠房租賃與智能化改造協議
- 大學刑法考試題及答案
- 群體健康策略課件
- 調研安全生產工作方案
- 安全總監個人述職報告3
- 2024年廣東省中考物理試卷(含答案逐題解析)
- 武術專業個人簡歷模板范文
- LD水電站智慧工程建設方案研究
- DB37-T 4384-2021 混凝土橋梁有效預應力無損檢測技術規程
- 竣工財務決算報表模板
- 2021利達JB-QG-LD988EL JB-QT-LD988EL 火災報警控制器 消防聯動控制器調試手冊
- 2024年中鐵(天津)軌道交通投資建設限公司運營管理人員招聘5人高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 創傷中心匯報
- 裝配式結構吊裝施工計算書
- 2024安徽蕪湖市中江城建集團限公司下屬子公司社會招聘60人公開引進高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 放射科疑難病例分析討論記錄
評論
0/150
提交評論