我在执行函数的SQL Server中有这个过程,我想在PHP中收集输出。
问题是它返回的第一个结果是"result",然后它返回另一个结果和输出。
如何收集这些输出?
谢谢
DECLARE @NETO FLOAT
DECLARE @DTO1 FLOAT
DECLARE @DTO2 FLOAT
DECLARE @DTO3 FLOAT
DECLARE @CODIGO NVARCHAR(50)
DECLARE @CODIGOEAN NVARCHAR(50)
DECLARE @NOMBRE NVARCHAR(50)
EXEC dbo.Precio, '.$IDCliente.', @NETO OUTPUT, @DTO1 OUTPUT,@DTO2 OUTPUT,@DTO3 OUTPUT,@CODIGO OUTPUT,@CODIGOEAN OUTPUT,@NOMBRE OUTPUT
select @NETO as neto, @DTO1, @DTO2, @DTO3, @CODIGO, @CODIGOEAN, @NOMBRE
$stmt = sqlsrv_prepare($pc, $sql);
sqlsrv_execute($stmt);
do {
$data=sqlsrv_fetch_array($stmt);
sqlsrv_next_result($stmt);
} while (sqlsrv_next_result($stmt));
echo json_encode($data);
它返回给我的结果
1条答案
按热度按时间gpfsuwkq1#
第一个“结果”是受T-SQL语句影响的行数。默认情况下,它作为结果的一部分返回。要停用此选项,请尝试:set nocount on,就在过程声明之后。例如: