【问题标题】:Calling SQL Server 2008 stored procedure from PHP从 PHP 调用 SQL Server 2008 存储过程
【发布时间】:2013-04-08 18:47:45
【问题描述】:

我正在尝试通过以下代码从 PHP ODBC 调用用 MS SQL SERVER 2008 编写的存储过程,但它似乎不起作用:

$statement = odbc_prepare ( $con, "CALL take_snapshot(?)");
if ($statement !== FALSE) {
if (odbc_execute ( $statement, 2010) !== FALSE) {
   return true;
    }
}

在 SQL Server Management Studio 中,我只需编写以下代码来执行它: 执行 take_snapshot 2010 在查询窗口中,它工作正常。

谁能指导我从 PHP ODBC 调用过程的正确语法。

【问题讨论】:

标签: php sql-server odbc


【解决方案1】:

odbc_execute 需要一个数组作为第二个参数。您正在传递一个整数。

odbc_execute ( resource $result_id [, array $parameters_array ] )

你应该使用:

 odbc_execute ( $statement, array(2010) )

See the manual

【讨论】:

  • 好的。谢谢这有效,但我遇到了另一个错误。现在它说: COUNT 字段不正确或语法错误 CALL take_snapshot (?)
  • @asim-ishaq 尝试在其前面加上架构(即dbo.procedure
  • 我只是想出了正确的称呼方式。使用:exec dbo.take_snapshot ?感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-26
  • 1970-01-01
  • 2015-08-28
相关资源
最近更新 更多