案例講解 儲存過程

2021-08-20 19:53:56 字數 1666 閱讀 9694

#一、建立儲存過程實現傳入使用者名稱和密碼,插入到admin表中

create procedure test_pro1(in username varchar(20),in loginpwd varchar(20))

begin

insert into admin(admin.username,password)

values(username,loginpwd);

end $

#二、建立儲存過程實現傳入女神編號,返回女神名稱和女神**

create procedure test_pro2(in id int,out name varchar(20),out phone varchar(20))

begin

select b.name ,b.phone into name,phone

from beauty b

where b.id = id;

end $

#三、建立儲存儲存過程或函式實現傳入兩個女神生日,返回大小

create procedure test_pro3(in birth1 datetime,in birth2 datetime,out result int)

begin

select datediff(birth1,birth2) into result;

end $

#四、建立儲存過程或函式實現傳入乙個日期,格式化成xx年xx月xx日並返回

create procedure test_pro4(in mydate datetime,out strdate varchar(50))

begin

select date_format(mydate,'%y年%m月%d日') into strdate;

end $

call test_pro4(now(),@str)$

select @str $

#五、建立儲存過程或函式實現傳入女神名稱,返回:女神 and 男神  格式的字串

如 傳入 :小昭

返回: 小昭 and 張無忌

drop procedure test_pro5 $

create procedure test_pro5(in beautyname varchar(20),out str varchar(50))

begin

select concat(beautyname,' and ',ifnull(boyname,'null')) into str

from boys bo

right join beauty b on b.boyfriend_id = bo.id

where b.name=beautyname;

set str=

end $

call test_pro5('柳岩',@str)$

select @str $

#六、建立儲存過程或函式,根據傳入的條目數和起始索引,查詢beauty表的記錄

drop procedure test_pro6$

create procedure test_pro6(in startindex int,in size int)

begin

select * from beauty limit startindex,size;

end $

call test_pro6(3,5)$

Mysql儲存過程案例

刪除drop procedure if exists p house set premit 建立獲取房間最低 和統計房間數儲存過程 delimiter create definer dev stand admin procedure p house set premit in in house in...

儲存過程建立案例

set ansi nulls on set quoted identifier on goalter procedure dbo prc create table banid varchar 50 name varchar 50 keyname varchar 50 banzhu bigint,ft...

儲存過程與事務案例

create proc proc takemoney cardid1 varchar 20 匯款賬號 pwd int 匯款密碼 takemoney money,匯款金額 cardid2 varchar 20 存款賬號 asset nocount on declare err int set err ...