mysql中的触发器以及存储过程的基础了解_MySQL
bitsCN.com
mysql中的触发器以及存储过程的基础了解 触发器的基础了解: 01触发器(trigger):一触即发,就是当进行某种操作之后(或者之前),附加的一种操作就马上执行。02作用:监视某种情况并触发某种操作;03注意事项:04能监视的事件:增,删,改;能触发的事件:增,删,改;05 06监视地点:table07监视事件:insert/update/delete08触发时间:after/before09触发事件:insert/update/delete10 11#建立商品表:12 create table goods(goodsId int, name varchar(10), num int)charset utf8$13 14#建立订单表:15create table orders(ordersId int, goodsId int, num int)charset utf8$16 17#插入数据18insert into goods values(1,'猪',22),(2,'羊',19),(3,'狗',12),(4,'猫',8)$19 20#买三只羊21insert into orders values(1, 2, 3);22 23#减少羊的库存24update goods set num = num -3 where goodsId = 2;25 26#开始学着使用触发器27#监视地点:orders28#监视操作:insert29#触发操作:update30#触发时间:after31 32#创建第一个触发器33create trigger t134after insert on orders35for each row36begin37 update goods set num = num -3 where goodsId = 2;38 end$39 40#删除触发器41drop trigger t1$42 43#创建第二个触发器44create trigger t245after insert on orders46for each row47begin48 update goods set num = num - new.num where goodsId = new.goodsId;49end$50 51#创建第三个触发器52create trigger t353after delete on orders54for each row55begin 56 update goods set num = num + old.num where goodsId = old.goodsId;57end$58 59#创建第四个触发器60create trigger t461after update on orders62for each row63begin64 update goods set num = num + old.num - new.num where goodsId = old.goodsId;65end$存储过程的基础了解: 01存储过程的含义:02存储过程类似于函数,就是把一段代码封装起来,当要执行这一段代码的时候,可以通过调用该存储过程来实现。在封装的语句体里面,可以使用if/else, case, while等控制结构。这里面就有所谓的sql编程。03#测试表的建立及表的操作:04create table users( num int, name varchar(20), password varchar(20));05 insert into users values(1,'zwh','zwh');06insert into users values(2, 'lhy', 'lhy');07insert into users values(3, 'test', 'test');08insert into users values(4, 'test', 'test');09insert into users values(5, 'test', 'test');10insert into users values(6, 'test', 'test');11insert into users values(7, 'test', 'test');12insert into users values(8, 'test', 'test');13insert into users values(9, 'test', 'test');14insert into users values(10, 'test', 'test');15 16#查看存在的存储过程:17show procedure status;18 19#删除存在的存储过程:20drop procedure ***;21 22 23#这里先把定界符先改为$:24delimiter $25 26#建立第一个存储过程:体验一下"sql封装"27create procedure p1()28begin29 select * from users;30end$31 32#调用存储过程33call p1()$34 35#建立第二个存储过程:体验一下"参数"36create procedure p2( n int )37begin38 select * from users where num n;46 else47 select * from users where num

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何在 PowerPoint 中的任何點擊之前隱藏文本如果您希望在單擊 PowerPoint 幻燈片上的任意位置時顯示文本,那麼設置起來既快速又容易。若要在 PowerPoint 中按一下任何按鈕之前隱藏文字:開啟您的 PowerPoint 文檔,然後按一下「插入 」功能表。點選新幻燈片。選擇空白或其他預設之一。仍然在插入選單中,按一下文字方塊。在投影片上拖出一個文字方塊。點擊文字方塊並輸入您

如何在MySQL中使用PHP編寫觸發器MySQL是一種常用的關係型資料庫管理系統,而PHP是一種流行的伺服器端腳本語言。在MySQL中使用PHP編寫觸發器可以幫助我們實現自動化的資料庫操作。本文將介紹如何使用PHP來撰寫MySQL觸發器,並提供具體的程式碼範例。在開始之前,請確保已經安裝了MySQL和PHP,並且已經建立了相應的資料庫表。一、創建PHP檔案和數據

在Oracle資料庫中,您可以使用CREATE TRIGGER語句來新增觸發器。觸發器是一種資料庫對象,它可以在資料庫表上定義一個或多個事件,並在事件發生時自動執行相應的操作。

如何在MySQL中使用PHP編寫自訂觸發器和預存程序引言:在開發應用程式時,我們經常需要在資料庫層面進行一些操作,例如插入、更新或刪除資料。 MySQL是一個廣泛使用的關聯式資料庫管理系統,而PHP是一種流行的伺服器端腳本語言。本文將介紹如何在MySQL中使用PHP編寫自訂觸發器和預存流程,並提供具體的程式碼範例。一、什麼是觸發器和預存程序觸發器(Trigg

mysql的觸發器是行級的。依照SQL標準,觸發器可以分為兩種:1、行級觸發器,對於修改的每一行資料都會啟動一次,如果一個語句插入了100行數據,將會呼叫觸發器100次;2、語句級觸發器,針對每個語句啟動一次,一個插入100行資料的語句只會呼叫一次觸發器。而MySQL中只支援行級觸發器,不支援預語句級觸發器。

如何在MySQL中使用Python編寫自訂觸發器觸發器是MySQL中的一種強大的功能,它可以在資料庫中的表上定義一些自動執行的操作。而Python則是一種簡潔而強大的程式語言,能夠方便地與MySQL進行互動。本文將介紹如何使用Python編寫自訂觸發器,並提供具體的程式碼範例。首先,我們需要安裝並匯入PyMySQL函式庫,它是Python與MySQL資料庫進行

如何使用MySQL的觸發器實現資料的自動歸檔引言:在現代資料管理領域,資料的自動歸檔和清理是一個重要而又常見的需求。隨著資料量的增加,保留完整的歷史資料會佔用過多的儲存資源,並且會降低查詢效能。 MySQL的觸發器提供了實現此需求的有效方法。本文將介紹如何使用MySQL的觸發器來實現資料的自動歸檔。一、什麼是MySQL的觸發器MySQL的觸發器是一種特殊的存

如何在MySQL中使用C#編寫自訂預存程序、觸發器和函數MySQL是一種廣泛使用的開源關係型資料庫管理系統,而C#是一種強大的程式語言,對於需要與資料庫進行互動的開發任務來說,MySQL和C#是很好的選擇。在MySQL中,我們可以使用C#來編寫自訂預存程序、觸發器和函數,來實現更靈活和強大的資料庫操作。本文將引導您使用C#編寫並執
