douqiaotong8682 2013-11-04 16:09
浏览 121
已采纳

mssql_execute没有返回结果 - 更好的调试方法?

My connection is established, and I can call my stored procedure:

$pid = $_GET['pid'];
$conn = mssql_connect($server, $username, $password);
...
mssql_select_db('mydb',$conn);

$sproc = mssql_init('consultGetPatientData');
mssql_bind($sproc, '@pid', $pid, SQLINT2);

$result = mssql_execute($sproc);
echo mssql_num_rows($result);
if($result){    
    $row = mssql_fetch_assoc($result);      
...

My $pid value is being passed correctly. The $result value being is var_dump:

resource(3) of type (mssql result) 

And msql_num_rows($result) yields 0 rows.

The user connecting to the database has sufficient access to the consultGetPatientData stored procedure:

Properties

When I manually run the stored procedure, desired results are being returned. My

My questions:

Is there a better way to debug these types of errors?

Is there anything glaring I am missing?

Thank you.

EDIT: stored procedure code as requested:

ALTER PROCEDURE [dbo].[consultGetPatientData] 
    @pid int = 0    
AS
BEGIN   
    SET NOCOUNT ON;

select 
    pd.pid, 
    pd.external_id,
    pd.fname, 
    pd.lname, 
    pd.DOB, 
    pd.ss, 
    pd.sex,
    pd.allergies,
    pb.date,
    pb.release
from 
    patient_data pd 
        inner join patient_booking_data pb on pd.pid = pb.pid
where 
    pd.pid = @pid
    and pb.date in (
        select MAX(date) from patient_booking_data where pid = @pid
    )
END
  • 写回答

1条回答 默认 最新

  • duannan4486 2013-11-04 16:32
    关注

    Change this:

    $sproc = mssql_init('consultGetPatientData');
    mssql_bind($sproc, '@pid', $pid, SQLINT2);
    
    $result = mssql_execute($sproc);
    echo mssql_num_rows($result);
    

    To this:

    $result=mssql_query("consultGetPatientData ".$pid.""); 
    echo mssql_num_rows($result);
    
    while($arr = mssql_fetch_assoc($result))
    {
     echo $arr['sex']."</br>"; 
     //you can put the rest of the code to display the rest of the fields
    } 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记