[英]How to pass parameter into stored proceedure from php
我在sql服務器中存儲了一個過程'spGetOrderByID' 。
它根據給定的訂單ID給出一條記錄。
和存儲的過程工作正常,而我在SQL Server中嘗試。
這是IAM使用的PHP代碼
$this->_connectionString = mssql_connect($host, $username, $password) or die("can't connect to server1");
$this->_dbName ='databaseName";
$selectDB = mssql_select_db($this->_dbName, $this->_connectionString ) or die('Databse error');
$sp = mssql_init('spGetOrderByID', $this->_connectionString);
$orderId =824;
mssql_bind($sp, "@orderID", $orderId, SQLINT1, false, false);
mssql_execute($sp,$this->_dbName);
echo $orderId;
1:讓我知道痛苦的結果將在$ orderId中,對不對?
2:我是否需要在php中設置任何新設置以使存儲過程正常工作。但是已經可以成功連接ms sql服務器了
3:現在我得到警告:mssql_execute():存儲過程執行失敗
請建議我
您使用msql_bind命令。 因此:
$sp = mssql_init('stored_p', $db);
mssql_bind($sp, "@varInput", $input, VARCHAR, false, false);
mssql_execute($sp,$db);
其中varInput對應於在存儲過程中聲明的輸入var。 可以類似的方式分配輸出變量。 您可以通過執行多個msql_bind命令,將不同的PHP var綁定到不同的存儲過程var,來分配多個輸入和輸出var。
有關更多信息和示例,請訪問http://php.net/manual/en/function.mssql-bind.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.