在開發過程種常常會重複使用某些sql語句,為此mysql先建立乙個表sdsd
create
table
user;
insert
user
(username,password)
values
('jacklove'
,'qqqqqq');
insert
user
(username,password)
values
('uzi'
,'jiandinglong');
insert
user
(username,password)
values
('clearlove'
,'777777'
);
drop
procedure
ifexists proced_name # 如果某條儲存過程存在,刪除它
delimiter
// # 結束符設定為'//'
create
procedure query_user_all(
)begin
select
*from
user
;end
//delimiter
;# 換回結束符
呼叫儲存過程
規則【in 表示輸入, out 表示輸出 inout 表示儲存過程傳入和傳出】
drop
procedure
ifexists query_user_by_username;
delimiter
//create
procedure query_user_by_username(
in _name varchar
(255),
out _id int
)begin
select id from
user
where username = _name into _id
end//
delimietr ;
# 換回結束符
呼叫有參儲存過程
查詢所有的儲存過程
select name from mysql.
proc
where db=
'資料庫名'
;
查詢某個儲存過程
show
create
procedure 儲存過程名;
儲存函式與儲存過程最大的區別就是儲存函式有return返回值,而過程用out引數代替return
格式與過程有點不同, 建立的關鍵字為function
delimiter
// # 更改結束符
create
function func_query_pwd(name varchar(50
))returns
varchar(50
)# 指定返回型別
begin
declare out_pwd varchar(50
);# 定義返回的變數
select password into out_pwd from
user
where username = name;
# 用out_pwd接收password的值
要記得把結束符改回來: delimiter ;
呼叫儲存函式
使用者自定義的儲存函式與mysql內部函式性質相同,所以用select
select func_query_pwd(
'uzi'
);
參靠
(1)(2)
MYSQL儲存過程與函式
二 儲存過程與儲存函式 語法如下 create procedure sp name proc parameter characteristic routine body create function sp name func parameter returns type characteristi...
MYSQL儲存過程與函式
二 儲存過程與儲存函式 語法如下 create procedure sp name proc parameter characteristic routine body create function sp name func parameter returns type characteristi...
儲存過程與儲存函式
plsql中語法 create or replace procedure 過程名 引數名 in out 型別 asbegin end 宣告pro add sal儲存過程,作用是給指定員工漲1000元工資,並列印出漲前和漲後工資 create orreplace procedure pro add s...