无法在zend框架中执行存储过程

时间:2014-12-22 09:56:30

标签: php sql-server zend-framework php-5.3 execute

我在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驱动程序之前,总是一切都像是我的第一个解决方案。

1 个答案:

答案 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();

我希望它可以帮到你。 :)