第一部分:知識準備sql
MySQL存儲過程的參數用在存儲過程的定義,共有三種參數類型,IN,OUT,INOUT,形式如:數據庫
CREATE PROCEDURE([[IN |OUT |INOUT ] 參數名 數據類形...])函數
IN 輸入參數:表示該參數的值必須在調用存儲過程時指定,在存儲過程當中修改該參數的值不能被返回,爲默認值;測試
OUT 輸出參數:該值可在存儲過程內部被改變,並可返回;select
INOUT 輸入輸出參數:調用時指定,而且可被改變和返回;call
第二部分:寫入函數數據
選中對應的數據庫->"函數"->"過程"-->輸入對應的參數(沒有則不須要輸入)->寫入函數體-->保存->輸入函數名便可;查詢
例如:查詢中須要輸入一個參數userid,函數體爲:存儲過程
BEGIN
#Routine body goes here...
select * from users where id=userid;
ENDquery
測試:選中對應的函數名->右鍵->運行函數;
第三部分:調用
如,在ThinkPHP中調用:
$sql = "call selectById(2)"; $res = M() ->query($sql); var_dump($res);