儲存過程以及函式

2021-08-20 21:43:38 字數 1659 閱讀 1595

先寫幾個例項玩玩

select * from db_user;

delimiter //

create procedure login(in uname varchar(20),in pwd varchar(20))

begin

declare upassconfirm varchar(20);

select password into upassconfirm  from db_user where username = uname;

if upassconfirm=pwd then

select "登入成功";

elseif upassconfirm is null then

select "使用者名稱不存在";

elseif upassconfirm !=pwd then

select "密碼不正確";

end if;

end;

//delimiter ;

delimiter //

create procedure login(in uname varchar(20),in password varchar(20))

begin

declare upassconfirm varchar(20);

select password into upassconfirm from db_user where username=uname;-- 如果什麼都查詢不出來,這賦值的時候會為null

if upassconfirm=password then

select "登入成功";

elseif upassconfirm is null then

select "使用者名稱不正確";

elseif upassconfirm != password then

select "密碼不正確";

end if;

end;

//delimiter ;

call login("admin3","admin")

set global log_bin_trust_function_creators=true;

delimiter //

create function namespace()

returns char(50)

return (select username from db_user where username="admin");

//delimiter ;

select namespace();

create table t (s1 int ,primary key (s1))

delimiter //

create procedure handlerdemo()

begin

declare continue handler for sqlstate "23000" set @x2 = 1;

set @x=1;

insert into t values (1);

set @x=2;

insert into t values (1);

set @x=3;

end;

//delimiter ;

call handlerdemo()

select @x;

儲存過程 儲存過程及函式例項

儲存過程及函式例項練習 一 1 建立儲存過程food price count。2 使用call語句來呼叫儲存過程。查詢 在2 18之間的食品種數。3 使用select語句檢視結果。4 使用drop語句刪除儲存過程food price count。可以通過,show procedure status ...

Oracle儲存過程以及呼叫

剛開始學習儲存過程,寫下自己的一點總結,參考了這位大神的部落格 首先建乙個表,名為t 2018jjr 表結構 一 無引數的 create or replace procedure firstpro as countpro number 3 begin select count into countp...

儲存過程和儲存函式

1 mysql 在操作子程式時,由於需要使用分號 所以要使用delimiter先重新定義分界符為 以下 包含的內容表示注釋 delimiter 使用delimiter 把定界符由 設定為 注意 delimiter 和 之間的空格。1 建立子程式 儲存過程和儲存函式的統稱 create procedu...