Home > php教程 > php手册 > oracle database access object

oracle database access object

WBOY
Release: 2016-06-21 09:13:12
Original
1210 people have browsed it

access|object|oracle

 
Calling example:

$conn = OCILogon("www_cec", "webchn99", "unicorn");
#or you can just inclued file like "include("modcec_OCI_conn.php3");"

$newOda= new ODA($conn);
#################
#or you can use login method like this
#$newOda-=new ODA();
#$newOda->Logon("www","99","corn");
###############################################
$newOda->CmdString=" update test set nouse='dfs' where login_name='guoyafeng'";
if(!$newOda->Execute()) {
echo $newOda->err;
}
else
{
echo $newOda->Rows;  #get the affected row number.
}
#or you can call execute like this####
/*
$newOda->Execute(" update test set nouse='dfs' where login_name='guoyafeng'");
*/
#############################

#the following demostrate the open method.
$newOda->Open("select * from test")) or die $newOda->err;

#Get data from RS
echo "count is" .$newOda->Rows;
for($i=0;$iRows;$i++)
   for($j=0;$jCols;$j++)
    {
       echo $newOda->RS[$i][$j];
       
       }


$newOda->Logoff();
?>

/********************************************************************************#
#  File Name:ODA.php3                                                            #
#  Author:Guo Yafeng                                    #
#  Function: Oracle DB Access.                          #
#  Maint History:                                                                #
#         Sept 18,2000 first release.                                            #
#                                                                                #
#                                                                                #
#********************************************************************************/


/********************************************************************************#
#Object interface description:                                                   #
#  Properties:                                                                   #
#       conn                Connection Object                                    #
#       err_no              Error No                                             #
#       err                 Error Description                                    #
#       CmdString           SQL Statements to execute.                           #
#       Rows               Affected Rows.                                      #
#       RS                  Return value array.                                  
#      Cols                                                                                         #
#                                                                                #
#  Method:                                                                       #
#       Open                Execute the CmdString and return value               #
#       Execute             Execute the CmdString.                               #
#********************************************************************************/

   file://$conn = OCILogon("www_ce", "ceonline99", "wsgp");
  // $conn = OCILogon("www_cec", "webchn99", "unicorn");
//  if ($SERVER_NAME == "")
//          $SERVER_NAME = $HTTP_HOST;

class ODA
{
  


  
  function ODA($cn="") {

   if($cn!="")
    $this->conn=$cn;
    return TRUE;
  
  }
  
  function Logon($user,$pass,$db) {
  
    if(!($this->conn = OCILogon($user, $pass, $db))){
    
     $this->err_no=106;
     $this->err="Error 106: Failed to logon.";
     return FALSE;
    };
    
    return TRUE;
    
  }
  function Open($sql="") file://$this->CmdString
  {
     if($this->conn=="") {
        $this->err_no=100;
        $this->err="Error 100,Connection Object Required.";
        return FALSE;
      }
     
     if($sql=="" and $this->CmdString=="") {
        $this->err_no=101;
        $this->err="Error 101,SQL Statement Required.";
        return FALSE;
      }
     if($sql=="")
        $sql=$this->CmdString;
    if(!($cursor=OCIParse($this->conn,$sql))) {
       $this->err_no=102;
       $this->err="Server Internal Error: Failed to parse SQL Statement.";
       return FALSE;
    }
    
    if(!OCIExecute($cursor))  {
      $this->err_no=103;
      $this->err="Server Internal Error: Failed to execute SQL Statement.";
      return FALSE;
    }
    $this->Rows=0;
    while(OCIFetchInto($cursor,$this->RS[$this->Rows])){
    
      $this->Rows++;
      
     }
     $this->Cols=OCINumCols($cursor);

    if($this->Rows==0) {
    
     $this->err_no=104;
     $this->err="Warning: No rows affectted.RS result is not available.";
    }

     OCIFreeStatement($cursor);
     
     return TRUE;
  }
  
  
    function Execute($sql="") {
     if($this->conn=="") {
        $this->err_no=100;
        $this->err="Error 100,Connection Object Required.";
        return FALSE;
      }
    
     if($sql=="" and $this->CmdString=="") {
        $this->err_no=101;
        $this->err="Error 101,SQL Statement Required.";
        return FALSE;
      }
     if($sql=="")
        $sql=$this->CmdString;
    
    if(!($cursor=OCIParse($this->conn,$sql))) {
       $this->err_no=102;
       $this->err="Server Internal Error: Failed to parse SQL Statement.";
       return FALSE;
    }
   
    
    if(!OCIExecute($cursor))  {
      $this->err_no=103;
      $this->err="Server Internal Error: Failed to execute SQL Statement.";
      return FALSE;
    }
    $this->Rows=OCIRowCount($cursor);
    OCIFreeStatement($cursor);
    
    return TRUE;
  }
  function LogOff(){
  
  if(!OCILogoff($conn)){
    
    $this->err_no=105;
    $this->err="Server Internal Error: Failed to logoff database.";
    return FALSE;
   }
  return TRUE;
  
  }
}
?>



Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template