MySQL好像從開始才引入存儲過程反正以前做應用的時候從沒碰過不過現在因為主要作內部系統所以很多應用都用到了存儲過程當然前台有時候也需要調用MySQL存儲過程PHP的MySQL Lib好像支持的不是很好不過我搜索了些資料雖然不多但是還是嘗試的使用了現在介紹一下方法以便用到的朋友不用再頭疼
MySQL擴展也是支持存儲過程的不過只支持無返回結果的存儲過程如果該存儲過程存在輸出這個調用就會拋出一個錯誤具體錯誤忘記了調用方式很簡單
$rs = mysql_query("call func(str)" $conn);
這個如果有返回結果比如返回字符串就會報錯我現在找到的解決方法是使用MySQLi擴展
$rs = mysqli_query("call func(str)" $conn);
這樣$rs就作為一個普通的MySQL Result來使用了非常方便
在調用存儲過程的時候可能還會碰到一個問題那就是可能會順序調用多個存儲過程這樣同樣會報錯解決方法就是在調用一個存儲過程並處理完成後手動關閉MySQL鏈接然後再次connect再調用另一個存儲過程再處理需要調用多少個存儲過程就重新連接多少次
From:http://tw.wingwit.com/Article/program/PHP/201311/21243.html