温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用PHP连接Oracle数据库

发布时间:2021-08-09 18:28:28 来源:亿速云 阅读:267 作者:chen 栏目:编程语言

这篇文章主要讲解了“怎么用PHP连接Oracle数据库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用PHP连接Oracle数据库”吧!

  连接

  < ?if($conn=Ora_Logon("user@TNSNAME","password"))   {echo"SUCCESS!Connectedtodatabase\n";   }else   {echo"Failed:-(Couldnotconnecttodatabase\n";}   Ora_Logoff($conn);   phpinfo();   ?>

  以上代码使用TNSNAME(在你的tnsnames.ora文件中指明)定义的Oracle数据库名称、用户名称和密码连接数据库。在成功连接的基础上,ora_logon函数返回一个非零的连接ID并储存在变量$conn中。

  查询

  假设与数据库已经连接就绪,下面我们就来实际的应用对数据库的查询。下面的代码演示了一个连接并查询的典型例子:

  functionprintoraerr($in_cur)

  {

  //检查Oracle是否出错

  //如果存在错误则显示

  //当指针被激活时每次请求Oracle后调用该函数

  if(ora_errorcode($in_cur))

  echo"Oraclecode-".ora_error($in_cur)."\n";

  return;

  }

  if(!($conn=ora_logon("user@TNSNAME","password")))

  {echo"Connectiontodatabasefailed\n";

  exit;

  }

  echo"Connectedasconnection-$conn\n";

  echo"Openingcursor...\n";

  $cursor=ora_open($conn);printoraerr($cursor);

  echo"Openedcursor-$cursor\n";

  $qry="selectuser,sysdatefromdual";

  echo"Parsingthequery$qry...\n";

  ora_parse($cursor,$qry,0);printoraerr($cursor);

  echo"Queryparsed\n";

  echo"Executingcursor...\n";

  ora_exec($cursor);printoraerr($cursor);

  echo"Executedcursor\n";

  echo"Fetchingcursor...\n";

  while(ora_fetch($cursor))

  {

  $user=ora_getcolumn($cursor,0);printoraerr($cursor);

  $sysdate=ora_getcolumn($cursor,1);printoraerr($cursor);

  echo"row=$user,$sysdate\n";

  }

  echo"Fetchedallrecords\n";

  echo"Closingcursor...\n";

  ora_close($cursor);

  echo"Closedcursor\n";

  echo"Loggingofffromoracle...\n";

  ora_logoff($conn);

  echo"Loggedofffromoracle\n";

  ?>

  怎样用PHP连接Oracle数据库

  显示结果

  以下代码演示了怎样查询数据库并将结果输出:

  functionprintoraerr($in_cur,$conn)

  {

  //检查Oracle是否出错

  //如果存在错误则显示

  //当指针被激活时每次请求Oracle后调用该函数

  //Ifitencounteredanerror,weexitimmediately

  if(ora_errorcode($in_cur))

  {echo"Oraclecode-".ora_error($in_cur)."n";

  ora_logoff($conn);

  exit;

  }

  return;

  }

  functionexequery($w_qry,$conn)

  {

  $cursor=ora_open($conn);printoraerr($cursor,$conn);

  ora_parse($cursor,$w_qry,0);printoraerr($cursor,$conn);

  ora_exec($cursor);printoraerr($cursor,$conn);

  $numrows=0;

  $w_numcols=ora_numcols($cursor);

  //显示头部

  echo"\n";

  for($i=0;$i<$w_numcols;$i++)   {   $align=(ora_columntype($cursor,$i)=="NUMBER")?"RIGHT":"LEFT";   echo"\t".ora_columnname($cursor,$i)."\n";   }   echo"\n";   while(ora_fetch($cursor))   {   echo"\n";   for($i=0;$i<$w_numcols;$i++) align="(ora_columntype($cursor,$i)=="NUMBER")?"RIGHT":"LEFT";" .="" else="" numrows="=0)" conn="ora_logon("user@SID","password")))" qry="SELECT   deptno\" from="" employee="">

  基于HTTP的Oracle登录

  将以下代码加在PHP页面代码之前以确认Oracle登录。注意你必须正确设定$SID。

  if(!isset($PHP_AUTH_USER))

  {

  Header("WWW-authenticate:basicrealm=\"$SID\"");

  Header("HTTP/1.0401Unauthorized");

  $title="LoginInstructions";

  echo"

  Youarenotauthorizedtoenterthesite

  \n";

  exit;

  }

  else

  {

  if(!($conn=ora_logon("$PHP_AUTH_USER@$SID",$PHP_AUTH_PW)))

  {Header("WWW-authenticate:basicrealm=\"$SID\"");

  Header("HTTP/1.0401Unauthorized");

  $title="LoginInstructions";

  echo"

  Youarenotauthorisedtoenterthesite

  \n";

  exit;

  }}

  ?>

感谢各位的阅读,以上就是“怎么用PHP连接Oracle数据库”的内容了,经过本文的学习后,相信大家对怎么用PHP连接Oracle数据库这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI