Maison  >  Article  >  développement back-end  >  php查询oracle 临时表,为啥为空

php查询oracle 临时表,为啥为空

WBOY
WBOYoriginal
2016-06-13 12:52:381214parcourir

php查询oracle 临时表,为什么为空?

<br />
$dbOracle=oci_connect("数据库连接都是正常的,查询不是临时表都正常");<br />
<br />
$oracleSql="". <br />
"begin ". <br />
"    insert into FS_TT". <br />
"    select * ". <br />
"    from FS ". <br />
"    where rownum <2;". <br />
" end;";//不用begin 直接写sql也是一样的   $stid = oci_parse($dbOracle, $oracleSql);<br />
<br />
 $r=oci_execute($stid);<br />
 print_r($r);<br />
<br />
 $oracleSql="select * from FS_TT";<br />
 $stid = oci_parse($dbOracle, $oracleSql);<br />
 $r=oci_execute($stid);<br />
 print_r($r);<br />
   //上面sql在plsql里面执行都没有问题,能查询出 临时表新插入的数据 <br />
   //但是php就查询不出来 <br />
   //把临时表,改成正是表,php就可以查询出来 <br />
   //什么原因呢?我现在还算是在一个会话里面把? <br />
   //权限?我php连接用的用户名密码,和plsql用的一样   <br />
<br />
 while ($row = oci_fetch_assoc($stid)){     <br />
	echo $row['NAME'],"<br>\n";<br />
 }  <br />
<br />


------解决方案--------------------
可能是  where rownum ; 后面的分号导致的查询失败


$oracleSql = "insert into FS_TT select * from FS where rownum  看看
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn