以一個最簡單的查詢語句的存儲過程爲例:mysql
mysql 版:sql
********不帶參數版********code
create PROCEDURE queryStaffProc() ----注意此處,就算是沒有參數,也要加(),若是有參數輸入或者輸出,就寫在()中
BEGIN
select * from tb_staff ;server
ENDclass
call queryStaffProc; ---注意此處,調用要用callselect
**********帶輸入參數版*************call
create PROCEDURE queryStaffProc(IN p_StaffNo VARCHAR(20))---括號中能夠傳入多個參數
BEGIN
select * from tb_staff where StaffNo=p_StaffNo ;查詢
END存儲過程
call queryStaffProc (‘admin’); ---傳入參數word
**********帶輸出參數版*************
create PROCEDURE queryStaffProc(IN p_StaffNo VARCHAR(20),out p_StaffName VARCHAR(20)) --注意輸入參數是in,輸出參數是out
BEGIN
select StaffName into p_StaffName from tb_staff where StaffNo=p_StaffNo ; ---將要輸出的內容賦值給輸出參數
END
call queryStaffProc ('admin',@staffName); --傳入兩個參數
select @staffName ---獲取值
Sql server 版:
*******不帶參數版********
create PROCEDURE queryStaffProc --注意此處,不帶(),若是須要定義參數,在下方定義
AS
create PROCEDURE queryStaffProc --注意此處,不帶(),若是須要定義參數,在下方定義
AS
declare @p_StaffNo varchar(20)
create PROCEDURE queryStaffProc --注意此處,不帶(),若是須要定義參數,在下方定義
AS
@p_StaffNo varchar(20),
@p_StaffName varchar(20) output --輸出參數