php中的数据库
php中能用的数据库有mysql,msql,mssql,odbc,sybase,oracle等。不过,看了php的函数库后,你会发现只有用mysql。因为php对他的支持是最全面的,也是最细致的。反而,对大型数据库oracle的支持到不如他。因为php中可以用对象打包,所以,我希望大家把数据库封装成一个对象,以下是一个封装好的数据库对象,供大家参考: 
<?php 
  
class DB 
  

    var 
$Host host// Hostname of our MySQL server 
    
var $Database database// Logical database name on that server 
    
var $User root// Database user 
    
var $Password ""// Database user's password 
    
var $Link_ID 0// Result of mysql_connect() 
    
var $Query_ID 0// Result of most recent mysql_ry() 
    
var $Record = array(); // Current mysql_fetch_array()-result 
    
var $Row// Current row number 
    
var $Errno 0// Error state of query 
    
var $Error ""

    function 
halt($msg
    { 
      echo(
"</TD></TR></TABLE><B>Database error:</B> $msg<BR>\n"); 
      echo(
"<B>MySQL error</B>: $this->Errno ($this->Error)<BR>\n"); 
      die(
"Session halted."); 
    } 

    function 
connect() 
    { 
      if(
$this->Link_ID == 0
      { 
        
$this->Link_ID mysql_connect($this->Host$this->User$this->Password); 
        if (!
$this->Link_ID
        { 
          
$this->halt("Link_ID == false, connect failed"); 
        } 
        
$SelectResult mysql_select_db($this->Database$this->Link_ID); 
        if(!
$SelectResult
        { 
          
$this->Errno mysql_errno($this->Link_ID); 
          
$this->Error mysql_error($this->Link_ID); 
          
$this->halt("cannot select database <I>".$this->Database."</I>"); 
        } 
      } 
    } 

    function 
query($Query_String
    { 
      
$this->connect(); 
      
$this->Query_ID mysql_query($Query_String,$this->Link_ID); 
      
$this->Row 0
      
$this->Errno mysql_errno(); 
      
$this->Error mysql_error(); 
      if (!
$this->Query_ID
      { 
        
$this->halt("Invalid SQL: ".$Query_String); 
      } 
      return 
$this->Query_ID
    } 

    function 
next_record() 
    { 
      
$this->Record mysql_fetch_array($this->Query_ID); 
      
$this->Row += 1
      
$this->Errno mysql_errno(); 
      
$this->Error mysql_error(); 
      
$stat is_array($this->Record); 
      if (!
$stat
      { 
        
mysql_free_result($this->Query_ID); 
        
$this->Query_ID 0
      } 
      return 
$this->Record
    } 

    function 
seek($pos
    { 
      
$status mysql_data_seek($this->Query_ID$pos); 
      if (
$status$this->Row $pos
      return; 
    } 

    function 
num_rows() 
    { 
      return 
mysql_num_rows($this->Query_ID); 
    } 

    function 
num_fields() 
    { 
      return 
mysql_num_fields($this->Query_ID); 
    } 

    function 
field_value($Name
    { 
      return 
$this->Record[$Name]; 
    } 

    function 
affected_rows() 
    { 
      return @
mysql_affected_rows($this->Link_ID); 
    } 
  } 
?>