当前位置:首页 > PHP教程 > php应用 > 列表

PHP程序中使用adodb连接不同数据库的代码实例

发布:smiling 来源: PHP粉丝网  添加日期:2021-06-30 11:26:01 浏览: 评论:0 

这篇文章主要介绍了PHP程序中使用adodb连接不同数据库的代码实例,具体的用法示例中用switch语句写了一个汇总式的支持,需要的朋友可以参考下。

adodb.inc.php文件需要去下载一个adodb,放在相应的位置,然后在php中include进来就可以。

连接oracle数据库

  1. <?php  
  2.  include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3.   $conn = &NewADOConnection('oci8'); 
  4.   $conn->Connect($DBServer,$DBUser,$DBPass);   
  5.  ?> 

连接PostgreSQL数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn = NewADOConnection('postgres');  
  4. $conn->Connect('localhost''root''pass''mydb');     
  5. ?> 

连接PostgreSQL数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");           //包含adodb类库文件  
  3. $conn = NewADOConnection(' postgres ');  
  4. $conn->Connect('host=localhost port=5432 dbname=mydb'); //连接PostgreSQL数据库 
  5. ?> 

连接Mysql数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");                 //包含adodb类库文件  
  3. $conn = NewADOConnection('mysql://root:1981427@localhost/test');      //连接MySQL数据库  
  4. ?> 

连接MySQL数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn = NewADOConnection('mysql');         
  4. $conn->Connect('localhost''root''1981427''test');   //连接MySQL数据库  
  5. ?> 

连接Access数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn = NewADOConnection('access');       //连接Access数据库  
  4. $conn->Connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=d://mydb.mdb;Uid=Admin;Pwd=;");  
  5. ?> 

连接SQL Server数据库,通过ODBC连接

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn=NewADOConnection('odbc_mssql');      //连接SQL Server数据库  
  4. $conn->Connect("Driver={SQL Server};Server=localhost;Database=mydb;",'username','password');  
  5. ?> 

连接SQL Server数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn=NewADOConnection('mssql');        //连接SQL Server数据库  
  4. $conn->Connect("localhost', 'username', 'password', 'mydb');  
  5. ?> 

连接DB2数据库

  1. <?php  
  2. include("adodb/adodb.inc.php");         //包含adodb类库文件  
  3. $conn=NewADOConnection('db2');         //连接DB2数据库  
  4. $conn->Connect("driver={IBM db2 odbc DRIVER};database=mydb;hostname=localhost;port=50000;  
  5.  protocol=TCPIP;uid=root; pwd=pass");  
  6. ?> 

下面来看一个PHP编程中的实例运用:

首先定义一个数据库连接函数,支持多种不同的数据库,传入一个SQL语句,将执行结果返回,代码如下:

  1. public function DBConnect($DBType,$DBServer,$DBUser,$DBPass,$DBName,$sqlStr
  2.  { 
  3.  $StrCon
  4.  $result
  5.  $conn
  6.  $output=""
  7.  switch($DBType
  8.  { 
  9.   Case 0: //Sql Server 
  10.    //$StrCon ="Driver={SQL Server};Server=$DBServer;Database=$DBName;Uid=$DBUser;Pwd=$DBPass;"; 
  11.    //创建SQL Server数据库连接 
  12.    $conn= &NewADOConnection('odbc_mssql'); 
  13.    $conn->Connect("Driver={SQL Server};Server=".$DBServer.";Database=".$DBName.";Uid=".$DBuser.";Pwd=".$DBPass.";");    
  14.   break
  15.   Case 1: //Oracle 
  16.    //$StrCon ="Provider=MSDAORA.1;Data Source=$DBServer;Password=$DBPass;User ID=$DBUser;Persist Security Info=True;"; 
  17.    //创建oracle数据库连接 
  18.    $conn = &NewADOConnection('oci8'); 
  19.    $conn->Connect($DBServer,$DBUser,$DBPass); 
  20.   break
  21.   Case 2: //Access 
  22.    //$StrCon ="Driver={Microsoft Access Driver (*.mdb)};Dbq=$DBName;Uid=$DBUser;Pwd=$DBPass;"; 
  23.    //创建Access数据库连接 
  24.    $conn = &NewADOConnection('access'); 
  25.    $conn->Connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=".$DBName.";Uid=".$DBUser.";Pwd=".$DBPass.";"); 
  26.   break
  27.   Case 3: //mysql 
  28.    //创建mysql数据库连接 
  29.    $conn = NewADOConnection('mysql'); 
  30.    $conn->Connect($DBServer,$DBUser,$DBPass,$DBName); 
  31.    //$conn = &NewADOConnection("mysql://".$DBUser.":".$DBPass."@".$DBServer."/".$DBName);  
  32.   break
  33.   default
  34.   echo "抱歉,暂不支持此数据库,请检查配置的数据库类型!"
  35.   die(); 
  36.   break;  
  37.  } 
  38.  //执行查询操作 
  39.  $result=$conn->Execute($sqlStr); 
  40.  //数据库查询失败处理 
  41.  if ($result==false) 
  42.  { 
  43.   die("查询失败"); 
  44.  } 
  45.  //输出查询结果 
  46.  while(!$result->EOF) 
  47.  { 
  48.   $max=$result->fieldcount(); 
  49.   //$output=array(); 
  50.   for($i=0;$i<$max;$i++) 
  51.   { 
  52.   //echo $result->fields[$i].' '; 
  53.   $res[$i]=$result->fields[$i].' '
  54.   $output=$output.$res[$i]; 
  55.   } 
  56.  $result->MoveNext(); 
  57.  } 
  58.  $output=trim($output); 
  59.  //echo $output; 
  60.  //关闭数据库连接 
  61.  $conn->Close(); 
  62.  return $output
  63.  } 

定义一个函数,指明需要使用的数据库类型,数据库用户名和密码等,传入SQL语句,调用上面定义的数据库连接方法,执行SQL语句。

  1. public function ExecuteSql($sqlStr
  2.  { 
  3.   $DBType=1; 
  4.   $DBServer="arron"
  5.   //数据库用户名,不要使用sys这个超级用户 
  6.   $DBUser="system"
  7.   $DBPass="abcde"
  8.   $DBName=""
  9.   //$sqlStr="SELECT * FROM func;"; 
  10.   $myExpectStr=$this->DBConnect($DBType,$DBServer,$DBUser,$DBPass,$DBName,$sqlStr); 
  11.   return $myExpectStr
  12.  } 
  13. }

Tags: adodb

分享到: