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 相关文章推荐
Windows2003 下 MySQL 数据库每天自动备份
Dec 21 PHP
PHP 最大运行时间 max_execution_time修改方法
Mar 08 PHP
php echo 输出字符串函数详解
May 13 PHP
PHP文章按日期(月日)SQL归档语句
Nov 29 PHP
php四种基础算法代码实例
Oct 29 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
Symfony2之session与cookie用法小结
Mar 18 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
May 22 PHP
yii2学习教程之5种内置行为类详解
Aug 03 PHP
Laravel框架在本地虚拟机快速安装的方法详解
Jun 11 PHP
PHP中命名空间的使用例子
Mar 22 PHP
PHP底层运行机制与工作原理详解
Jul 31 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
PHP与已存在的Java应用程序集成
2006/10/09 PHP
基于PHP CURL获取邮箱地址的详解
2013/06/03 PHP
制作安全性高的PHP网站的几个实用要点
2014/12/30 PHP
PHP中的密码加密的解决方案总结
2016/10/26 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
PHP _construct()函数讲解
2019/02/03 PHP
读jQuery之五(取DOM元素)
2011/06/20 Javascript
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
日期处理的js库(迷你版)--自建js库总结
2011/11/21 Javascript
jquery获取文档高度和窗口高度汇总
2016/01/25 Javascript
JavaScript中的冒泡排序法
2016/08/03 Javascript
JavaScript实现简单的日历效果
2016/09/25 Javascript
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
Angularjs Promise实例详解
2018/03/15 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
修改node.js默认的npm安装目录实例
2018/05/15 Javascript
详解vue 组件
2020/06/11 Javascript
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
python链接Oracle数据库的方法
2015/06/28 Python
解决Python中字符串和数字拼接报错的方法
2016/10/23 Python
Python 多线程的实例详解
2017/09/07 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
Python numpy.array()生成相同元素数组的示例
2018/11/12 Python
python twilio模块实现发送手机短信功能
2019/08/02 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
python爬虫调度器用法及实例代码
2020/11/30 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
2021/01/08 Python
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
搞笑获奖感言
2014/01/30 职场文书
医生见习报告范文
2014/11/03 职场文书
小学少先队工作总结2015
2015/05/26 职场文书
银行工作心得体会范文
2016/01/23 职场文书
小学运动会开幕词
2016/03/04 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书
详解CSS不受控制的position fixed
2021/05/25 HTML / CSS
JavaScript高级程序设计之变量与作用域
2021/11/17 Javascript