为了账号安全,请及时绑定邮箱和手机立即绑定

MSSQL Fetch数组在While循环中显示错误

MSSQL Fetch数组在While循环中显示错误

PHP
慕姐4208626 2021-04-28 16:37:19
我正在写一个查询,以在mssql服务器中取得一些结果,该工作正常,但现在它们出现了一些错误,错误是警告:mssql_fetch_array():3不是有效的MS SQL结果资源我的连接查询正在工作,没有问题,我的查询是这样的$qry="select cd_pcp,pcp_nm from tbl_m_pcp order by cd_pcp asc";$result=mssql_query($qry);while($row1=mssql_fetch_array($result)){echo $row1['cd_pcp'];}var_dump $ result显示类型的resource(3)(mssql结果)该查询是在sql-server中执行的,为什么会显示此类型错误以解决此问题的任何方法,请帮帮我?
查看完整描述

2 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

一种可能的解释是来自的返回值mssql_query():


返回值


如果成功,则返回MS SQL结果资源;如果未返回任何行,则返回TRUE;如果错误,则返回FALSE。


重要的是要检查来自的结果mssql_query():


<?php

...

$qry = "select cd_pcp,pcp_nm from tbl_m_pcp order by cd_pcp asc";

$result = mssql_query($qry);

if ($result === true) {

    echo "No rows are selected";

} else if ($result === false) {

    echo "Error. ".mssql_get_last_message();

    exit;

} else {

    while ($row1 = mssql_fetch_array($result)) {

        echo $row1['cd_pcp'];

    }

}

...

?>

笔记:

MSSQL扩展已在PHP 7.0中删除。一个不错的选择是SQL Server的PHP驱动程序


查看完整回答
反对 回复 2021-05-14
?
万千封印

TA贡献1891条经验 获得超3个赞

我相信如果返回成功与否,var_dump将始终独立返回“ mssql结果”。如果值返回FALSE,请进行调试测试


$result = mssql_query($qry,$conn);

if(!$result)  {

   die('MSSQL error: ' . mssql_get_last_message());

}


查看完整回答
反对 回复 2021-05-14
  • 2 回答
  • 0 关注
  • 179 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信