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


Posted in PHP onDecember 19, 2015

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

连接oracle数据库

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

连接PostgreSQL数据库

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

 

连接PostgreSQL数据库

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

  ?>

连接Mysql数据库

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

连接MySQL数据库

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

连接Access数据库

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

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

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

连接SQL Server数据库 

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

连接DB2数据库

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

下面来看一个PHP编程中的实例运用:
首先定义一个数据库连接函数,支持多种不同的数据库,传入一个SQL语句,将执行结果返回,代码如下:

public function DBConnect($DBType,$DBServer,$DBUser,$DBPass,$DBName,$sqlStr)
 {
 $StrCon;
 $result;
 $conn;
 $output="";
 switch($DBType)
 {
  Case 0: //Sql Server
   //$StrCon ="Driver={SQL Server};Server=$DBServer;Database=$DBName;Uid=$DBUser;Pwd=$DBPass;";
   //创建SQL Server数据库连接
   $conn= &NewADOConnection('odbc_mssql');
   $conn->Connect("Driver={SQL Server};Server=".$DBServer.";Database=".$DBName.";Uid=".$DBuser.";Pwd=".$DBPass.";");   
  break;
  Case 1: //Oracle
   //$StrCon ="Provider=MSDAORA.1;Data Source=$DBServer;Password=$DBPass;User ID=$DBUser;Persist Security Info=True;";
   //创建oracle数据库连接
   $conn = &NewADOConnection('oci8');
   $conn->Connect($DBServer,$DBUser,$DBPass);
  break;
  Case 2: //Access
   //$StrCon ="Driver={Microsoft Access Driver (*.mdb)};Dbq=$DBName;Uid=$DBUser;Pwd=$DBPass;";
   //创建Access数据库连接
   $conn = &NewADOConnection('access');
   $conn->Connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=".$DBName.";Uid=".$DBUser.";Pwd=".$DBPass.";");
  break;
  Case 3: //mysql
   //创建mysql数据库连接
   $conn = NewADOConnection('mysql');
   $conn->Connect($DBServer,$DBUser,$DBPass,$DBName);
   //$conn = &NewADOConnection("mysql://".$DBUser.":".$DBPass."@".$DBServer."/".$DBName); 
  break;
  default:
  echo "抱歉,暂不支持此数据库,请检查配置的数据库类型!";
  die();
  break; 
 }
 //执行查询操作
 $result=$conn->Execute($sqlStr);
 //数据库查询失败处理
 if ($result==false)
 {
  die("查询失败");
 }
 //输出查询结果
 while(!$result->EOF)
 {
  $max=$result->fieldcount();
  //$output=array();
  for($i=0;$i<$max;$i++)
  {
  //echo $result->fields[$i].' ';
  $res[$i]=$result->fields[$i].' ';
  $output=$output.$res[$i];
  }
 $result->MoveNext();
 }
 $output=trim($output);
 //echo $output;
 //关闭数据库连接
 $conn->Close();
 return $output;
 }

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

public function ExecuteSql($sqlStr)
 {
  $DBType=1;
  $DBServer="arron";
  //数据库用户名,不要使用sys这个超级用户
  $DBUser="system";
  $DBPass="abcde";
  $DBName="";
  //$sqlStr="SELECT * FROM func;";
  $myExpectStr=$this->DBConnect($DBType,$DBServer,$DBUser,$DBPass,$DBName,$sqlStr);
  return $myExpectStr;
 }
}
PHP 相关文章推荐
优化NFR之一 --MSSQL Hello Buffer Overflow
Oct 09 PHP
php程序效率优化的一些策略小结
Jul 17 PHP
微盾PHP脚本加密专家php解密算法
Sep 13 PHP
PHP __autoload函数(自动载入类文件)的使用方法
Feb 04 PHP
关于PHP语言构造器介绍
Jul 08 PHP
PHP include任意文件或URL介绍
Apr 29 PHP
php实现模拟post请求用法实例
Jul 11 PHP
PHP中Restful api 错误提示返回值实现思路
Apr 12 PHP
PHP Ajax实现无刷新附件上传
Aug 17 PHP
thinkPHP统计排行与分页显示功能示例
Dec 02 PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 PHP
php实现面包屑导航例子分享
Dec 19 #PHP
php实现倒计时效果
Dec 19 #PHP
Thinkphp实现自动验证和自动完成
Dec 19 #PHP
详解WordPress中过滤链接与过滤SQL语句的方法
Dec 18 #PHP
基于ThinkPHP实现批量删除
Dec 18 #PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 #PHP
WordPress中注册菜单与调用菜单的方法详解
Dec 18 #PHP
You might like
模仿OSO的论坛(五)
2006/10/09 PHP
fgetcvs在linux的问题
2012/01/15 PHP
深入PHP运行环境配置的详解
2013/06/04 PHP
php简单实现单态设计模式的方法分析
2017/07/28 PHP
浅谈php://filter的妙用
2019/03/05 PHP
JS 统计时间
2021/03/09 Javascript
另类调用flash无须激活的方法
2006/12/27 Javascript
理解JavaScript的caller,callee,call,apply
2009/04/28 Javascript
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
2010/12/28 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
jQuery打印图片pdf、txt示例代码
2014/07/22 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
HTML,CSS,JavaScript速查表推荐
2014/12/02 Javascript
Markdown+Bootstrap图片自适应属性详解
2016/05/21 Javascript
Nodejs 获取时间加手机标识的32位标识实现代码
2017/03/07 NodeJs
Javascript实现页面滚动时导航智能定位
2017/05/06 Javascript
详解vue静态资源打包中的坑与解决方案
2018/02/05 Javascript
vue数组对象排序的实现代码
2018/06/20 Javascript
VUE实现图片验证码功能
2020/11/18 Javascript
[02:37]2018DOTA2亚洲邀请赛赛前采访 VP.no[o]ne心中最强SOLO是谁
2018/04/04 DOTA
Python中logging模块的用法实例
2014/09/29 Python
Django如何使用第三方服务发送电子邮件
2019/08/14 Python
Python-jenkins 获取job构建信息方式
2020/05/12 Python
Python 实现微信自动回复的方法
2020/09/11 Python
canvas粒子动画背景的实现示例
2018/09/03 HTML / CSS
英国著名书店:Foyles
2018/12/01 全球购物
法国在线药房:1001Pharmacies
2021/03/07 全球购物
财务人员个人自荐信范文
2013/09/26 职场文书
市三好学生主要事迹
2014/01/28 职场文书
现场施工员岗位职责
2014/03/10 职场文书
特教教师先进事迹
2014/05/21 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
九寨沟导游词
2015/02/02 职场文书
陕西导游词
2015/02/04 职场文书
好员工观后感
2015/06/17 职场文书
《现实主义勇者的王国再建记》第三弹OST全曲试听片段公开
2022/04/04 日漫