我在sql server中有一个存储的Proceedure 'spGetOrderByID'。
根据给定的订单ID给出记录。
当我在sql server中尝试时,存储的进程正常工作。
这是使用
的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 server
3:现在我收到警告:mssql_execute():存储过程执行失败
请告诉我
答案 0 :(得分:0)
您使用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变量绑定到不同的存储过程变量。