我在zend框架中执行存储过程时出现问题。 在此问题之前,我使用的是dblib,一切都很完美。这是代码:
$stmt = $this->_db->prepare( "EXEC getParam ? , ?");
$stmt->bindParam( 1, $param['serial'] );
$stmt->bindParam( 2, $renderXml );
$stmt->execute();
$data = $stmt->fetchAll();
现在,我将我的驱动程序从dblib更改为sqlsrv(通过wamp 32位运行)并且我遇到以下问题:
Microsoft] [SQL Server Native Client 11.0] COUNT字段不正确或语法错误'在> .. \ Sqlsrv.php:206>
我搜索了解决方案,但在我更改sql驱动程序之前,总是一切都像是我的第一个解决方案。
答案 0 :(得分:0)
我个人使用这种方法来调用一个有序的程序:
使用两个字符串参数
调用 getParam()$proc = "CALL getParam(:param1, :param2)";
$stmt = $this->_db->prepare($proc);
$stmt->bindParam(':param1', $param['serial'], PDO::PARAM_STR);
$stmt->bindParam(':param2', $renderXml , PDO::PARAM_STR);
$stmt->execute();
$data = $stmt->fetchAll();
我希望它可以帮到你。 :)