Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中调用sqlsrv API中的远程函数?_Php_Sql Server 2008_Api_Function - Fatal编程技术网

如何在PHP中调用sqlsrv API中的远程函数?

如何在PHP中调用sqlsrv API中的远程函数?,php,sql-server-2008,api,function,Php,Sql Server 2008,Api,Function,这几乎就是问题所在。我创建了一个返回bigint的存储函数,我希望返回值存储在PHP变量中。该脚本使用sqlsrv API,因为mssql API不适用于SQL Server 2008。我该怎么做?我在任何地方都找不到文档,似乎调用过程不起作用,exec过程也不起作用。用户定义的函数是根据值请求调用的。它可以在SQL查询中,也可以在SET命令中 例如: SET @myVariable = MyUserDefinedFunction(@parameter) SELECT MyUserDefined

这几乎就是问题所在。我创建了一个返回bigint的存储函数,我希望返回值存储在PHP变量中。该脚本使用sqlsrv API,因为mssql API不适用于SQL Server 2008。我该怎么做?我在任何地方都找不到文档,似乎调用过程不起作用,exec过程也不起作用。

用户定义的函数是根据值请求调用的。它可以在SQL查询中,也可以在SET命令中

例如:

SET @myVariable = MyUserDefinedFunction(@parameter)
SELECT MyUserDefinedFunction(@parameter2),@myVariable
就这样。 现在,在本例中,您可以像在任何其他查询中一样访问查询结果

顺便说一下,下次你问问题时,要更准确:

是用户定义的函数还是存储过程? 您使用的是哪种API? 也许是一些代码?
没有???我找到了答案

$query = "SELECT functionname(?,?,...,?) AS alias";
$bindvars = array($bindvar0,...,$bindvarn);
$resultset = sqlsrv_query($query, $connection, $bindvars);
$alias = sqlsrv_fetch_array($resultset);

我们使用$alias['alias']得到结果。

但是,如何将该值返回到PHP变量?如何在常规SELECT中执行此操作?我无法回答这个问题,因为您给出的唯一提示是API。哪一个?我不知道。等等,这意味着我可以将其作为常规查询编写,然后作为常规查询执行?我可以用分号分隔行吗?这是一个用户定义的函数。我使用的API名为sqlsrv。我的问题中都提到了这两个问题。关于代码,这是不必要的,因为我提出了一个关于如何做某事的一般性问题,并且没有代码可以显示。发布我的功能是没有用的。好吧,那就使用@Carlos而不是你的功能。哇,显示了相同的昵称,对于查询,使用我编写的。是的,但是我如何编写查询?使用call或exec?看这个:谢谢,但是,函数呢?在调用函数而不是过程的方式上有什么不同吗。在第二次世界大战中,没有任何关于MSSQL的自由和具体的经验,也没有关于博士后培训的现实,没有关于客户数据差异的程序。我爱你。不,我不知道你是谁。。。这是一个具体的问题吗?没有人会因为你的行为而受到伤害。再呼吸后。
$query = "SELECT functionname(?,?,...,?) AS alias";
$bindvars = array($bindvar0,...,$bindvarn);
$resultset = sqlsrv_query($query, $connection, $bindvars);
$alias = sqlsrv_fetch_array($resultset);