mysql觸發器和儲存過程

2021-09-01 17:05:16 字數 1048 閱讀 6533

mysql觸發器感覺比較使用,比如新增a表就要同時新增b表,或者刪除a表的同時也要刪除b表

觸發器還設計到old和new的使用:

delimiter //

create

trigger `mytrigger2` after insert on `t_user`

for each row begin

insert into t_card(id,card_name,card_num)values(new.id,new.name,new.pwd);

end//

注意:其中的delimiter // 其實跟觸發器沒關係的,他的意思說 當sql遇到乙個「//」時就表示結束

上面的t_user中的這條資料是新新增的,所以用new

delimiter//

create

trigger `mytrigger3` before delete on `t_user`

for each row begin

delete from t_card where id=old.id;

end//

二、儲存過程procedure:

delimiter//

create procedure `myprocedure1`(in id int,in name varchar(20),in pwd varchar(20),out num long)

begin

insert into t_user(id,name,pwd)values(id,name,pwd);

select count(*) into num from t_card;

end//

儲存過程主要涉及到傳入引數和返回引數,使用in 和 out 標識

返回引數用 select into 這種寫法

在資料庫中呼叫procedure ,感覺沒什麼意義

call myprocedure1(4,'jack','henan',@num);

select @num;

MYSQL 儲存過程,游標和觸發器

1.儲存過程 procedure mysql 儲存過程是從 mysql 5.0 開始增加的新功能。儲存過程的優點有一籮筐。不過最主要的還是執行效率和sql 封裝。特別是 sql 封裝功能,如果沒有儲存過程,在外部程式訪問資料庫時 例如 php 要組織很多 sql 語句。特別是業務邏輯複雜的時候,一大...

儲存過程和觸發器

儲存過程 stored procedure 是在大型資料庫系統中,一組為了完成特定功能的sql 語句集,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給出引數 如果該儲存過程帶有引數 來執行它。簡單的敘述 在大型資料庫系統中,儲存過程和觸發器具有很重要的作用。無論是儲存過程還是觸發器,都是s...

儲存過程和觸發器

1 什麼是儲存過程呢?定義 將常用的或很複雜的工作,預先用sql語句寫好並用乙個指定的名稱儲存起來,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫execute,即可自動完成命令。講到這裡,可能有人要問 這麼說儲存過程就是一堆sql語句而已啊?microsoft公司為什麼還要...