php调用mssql的存储过程无法同时返回输出参数和结果集??请教!!!
php调用mssql的存储过程无法同时返回输出参数和结果集??请教!!!
我的存储过程如:
create procedure feeAccording
( @total int output, ----总数
@tableName varchar(20) --表名
)
set @sql = 'select count(*) from ' + @tableName ;
set @sql = 'declare mycursor cursor for ' + @sql;
exec (@sql);
open mycursor;
fetch next from mycursor into @total;
close mycursor;
deallocate mycursor;
--获取当前页记录
set @sql = 'select * from ' + @tableName + 'where id > 50';
exec (@sql);
GO
我的php 代码如下:
$handle = mssql_init("feeAccording");
$tablName="mytable";
mssql_bind($handle,"@total",&$total,SQLINT4,TRUE);
mssql_bind($handle,"@lastPos",&$tablName,SQLVARCHAR);
if($r = mssql_execute($handle))
{
$num = mssql_num_rows($r);
for ($i = 0; $i < $num; $i++)
{
$result[$i]=mssql_fetch_assoc($r);
//echo $result[$i]["id"]."---<br>";
}
mssql_free_result($r);
}
这样我能得到结果集,但$total值确无法得到
如果我把存储过程中的最后一句(exec (@sql);)注释掉
其它不该任何代码,就能获得$total值
请问这是什么源英???
能解决码?