gpt4 book ai didi

php - 使用SQLSRV调用存储过程

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:51:14 24 4
gpt4 key购买 nike

所以我有一个要调用的存储过程,它将一个参数作为整数并返回10个单位。这是mssql中的sphttp://pastebin.com/shhakP81
这是我的sql语句

$companiesSQL = "{call WEBgetCompanylistByIndIDTen( ? )}";

参数
$params = array(array($industryID, SQLSRV_PARAM_IN));

查询
$companiesStmt = sqlsrv_query($companiesHandle, $companiesSQL, $params);

试图打印出结果会让我犯错误
sqlsrv_fetch_object()要求参数1是资源,给定布尔值
我知道$companyestmt应该是一个语句资源,但它是一个布尔值,这意味着查询失败。
while($row = sqlsrv_fetch_object($companiesStmt))
{
echo $row->COM."<br />";
}

我知道这个连接是有效的,因为我可以调用该表中没有参数的另一个存储过程并得到结果。
这意味着错误只能在$companyesql或$params内
我还想提到的是,我浏览了谷歌的前4-5页,尝试了无数不同的想法,其中包括微软从一个sp( http://technet.microsoft.com/en-us/library/cc626303(v=sql.105).aspx)获取结果的例子,甚至还有php的官方网站及其评论。
*编辑
我还应该提到,如果我登录到mssqlservermanagementstudio,并从那里运行存储过程,那么它就会工作。
我在这里做错什么了?

最佳答案

首先打开错误报告。请确保您有足够的权限使用此存储过程。检查用于创建连接的帐户是否有权执行存储过程并访问存储过程使用的所有资源。
我希望这有帮助,我在开始使用sql server时遇到了类似的问题。不是失败,而是返回一个空的结果集。
**编辑

关于php - 使用SQLSRV调用存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19932611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com