Php 请求<;程序>;失败是因为<;程序>;是一个过程对象。SQL错误37000
我正在尝试将SDK用于123insight MRP系统。在SDK中,有一个特定的例程称为Php 请求<;程序>;失败是因为<;程序>;是一个过程对象。SQL错误37000,php,sql,sql-server,odbc,procedure,Php,Sql,Sql Server,Odbc,Procedure,我正在尝试将SDK用于123insight MRP系统。在SDK中,有一个特定的例程称为SDK.BOMInsertSDK。每当我试图通过ODBC驱动程序从PHP执行SQL查询时,都会失败并出现错误 Warning: odbc_exec(): SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server] The request for procedure 'BOMInsertSDK' failed because 'BOMInsertSDK'
SDK.BOMInsertSDK
。每当我试图通过ODBC驱动程序从PHP执行SQL查询时,都会失败并出现错误
Warning: odbc_exec(): SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]
The request for procedure 'BOMInsertSDK' failed because 'BOMInsertSDK' is a
procedure object., SQL state 37000
这个错误让我困惑的地方是:我可以将查询输入到Microsoft SQL Server Management Express,查询将成功执行。还有一些其他例程,如ProductionSDK。子操作TestResultBooking
工作,但其他类似于SDK.PartInsertSDK
的操作不工作。对于我能执行什么和不能执行什么,这几乎是随机的。这是什么原因造成的
以下是相关SDK文档的屏幕截图:
这是我的问题,如果有问题的话:
EXECUTE [SDK].[BOMInsertSDK] @strParentPartNumber = "20-01-702",
@nSequenceNumber = 1234,
@strChildPartNumber = "01-07-001-R",
@decScrapPercentage = 0,
@decQuantity = 1, @blnIsPrime = 1,
@strMethodType = "Manufactured",
@strVersionNumber = "0001",
@blnInheritSerial = 0,
@strComments = "no comment"
非常感谢您的建议。遗憾的是,您没有显示执行该过程的PHP代码,但是您是否使用SQL Profiler查看了服务器上正在执行的实际SQL?在执行查询文本之前,PHP和/或ODBC可能会以某种方式更改查询文本。TSQL中字符串的正确分隔符是单引号,而不是双引号;您可能需要更改此设置,看看是否有任何不同。发送到数据库的数据与表不完全匹配。