PHP程序中使用adodb连接不同数据库的代码实例
发布:smiling 来源: PHP粉丝网 添加日期:2021-06-30 11:26:01 浏览: 评论:0
这篇文章主要介绍了PHP程序中使用adodb连接不同数据库的代码实例,具体的用法示例中用switch语句写了一个汇总式的支持,需要的朋友可以参考下。
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;
- }
- }
Tags: adodb
相关文章
- ·adodb的事务处理咋没效果(2013-11-28)
- ·PHP ADODB实现事务处理功能示例(2021-09-18)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)