免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2248 | 回复: 4
打印 上一主题 下一主题

php连接ORACLE,结果集有数据,文什么显示不出来呢? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-09 11:43 |只看该作者 |倒序浏览
<?php
PutEnv("ORACLE_SID=lee");   
$oraUser="test";   
$oraPass="test";   
$oraDB="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SID=lee)))";   

$connection   =   OCILogon($oraUser,$oraPass,$oraDB)   or   die("ORACLE   server未启动,请与系统管理员联系.");   

if   (   $connection   ==   false   )
{   
echo   OCIError($connection)."";   
exit;   
}      

$query   =   "select   id   from   v_guide   where   mis2id   is   null";   
$cursor   =   OCIParse(   $connection,   $query   );   

if(   OCIExecute(   $cursor   )   )
{
echo   OCIExecute(   $cursor   )."\n";
while   (   $row   =   OCIFetch($cursor))
{
echo   "1:".$row['id'];
}

}

OCICommit       ($connection);   
OCILOGOff       ($connection);   

?>   
我的echo   OCIExecute(   $cursor   )答应出来是有值,显示为1,但是为什么echo   "1:".$row['id']为空呢?

论坛徽章:
0
2 [报告]
发表于 2008-01-09 11:49 |只看该作者
bool oci_execute ( resource $stmt [, int $mode ] )
返回1只是说明执行成功了,但不表示结果集有记录

论坛徽章:
0
3 [报告]
发表于 2008-01-09 12:13 |只看该作者
可是我从数据库用那SQL是查询出数据了啊。怪啊

论坛徽章:
0
4 [报告]
发表于 2008-01-09 14:28 |只看该作者
自己找到原因了 把echo   "1:".$row['id'];
id变成大写的ID就可以了。

论坛徽章:
0
5 [报告]
发表于 2008-01-09 16:58 |只看该作者
建议用adodb,可以自动转换字段大小写,还能分页查询
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP