到MSSQL服務器從PHP存儲過程這不起作用:進行調用使用PDO使用輸入Paramters
$dbh = new PDO("dblib:host=xxxx;dbname=xxx", "xxxxx", "xxxxx");
$sth = $dbh->prepare("{exec wcweb_UserInfo(?)}");
$sth->bindParam(1, $name);
$sth->execute();
while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
var_dump($result);
}
這也不起作用:
$dbh = new PDO("dblib:host=xxxxx;dbname=xxxx", "xxxxx", "xxxx");
$sth = $dbh->prepare("{call wcweb_UserInfo(?)}");
$sth->bindParam(1, $name);
$sth->execute();
while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
var_dump($result);
}
這是否工作:
$dbh = new PDO("dblib:host=xxxxx;dbname=xxxx", "xxxxx", "xxxx");
$sth = $dbh->prepare("exec wcweb_UserInfo @userid=?");
$sth->bindParam(1, $name);
$sth->execute();
while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
var_dump($result);
}
我試過以上使用2,沒有和大括號等沒有工作我知道有人會說,好吧只是做它的華它有效嗎? ..問題是我正在使用sqlsrv_query庫將一個正在升級的應用程序從IIS服務器移植到Linux服務器。
應用程序中的所有數據庫調用均使用此方法寫入函數:{call wcweb_UserInfo(?)} ..沒有指定任何參數名稱,所以我將不得不修改每個數據庫調用以包含參數名稱。我的印象是,PHP5的PDO庫可以完成同樣的調用?
幫助!有什麼我做錯了嗎?還是僅僅是PDO不能進行這些調用?
你會得到什麼錯誤信息? –
沒有錯誤信息..多數民衆贊成在奇怪的事情。 –