У меня проблема с выполнением хранимой процедуры в Zend Framework.
До этой проблемы я использовал 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 bit), и у меня возникла следующая проблема:
Microsoft] [Поле собственного клиента SQL Server 11.0] Неверное поле COUNT или синтаксическая ошибка ‘в> .. \ Sqlsrv.php: 206>
Я искал решение, но всегда все было как мое первое решение, которое работало, прежде чем я изменил драйвер sql.
Персонально я использую этот метод для вызова надоедливой процедуры:
Звонить 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();
Я надеюсь, что это может помочь вам. 🙂
Других решений пока нет …