adodb.inc.php文件需要去下載一個(gè)adodb,放在相應(yīng)的位置,然后在php中include進(jìn)來(lái)就可以。
連接oracle數(shù)據(jù)庫(kù)
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = &NewADOConnection( 'oci8' ); $conn ->Connect( $DBServer , $DBUser , $DBPass ); ?> |
連接PostgreSQL數(shù)據(jù)庫(kù)
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = NewADOConnection( 'postgres' ); $conn ->Connect( 'localhost' , 'root' , 'pass' , 'mydb' ); ?> |
連接PostgreSQL數(shù)據(jù)庫(kù)
1
|
2
3
4
5
6
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = NewADOConnection( ' postgres ' ); $conn ->Connect( 'host=localhost port=5432 dbname=mydb' ); //連接PostgreSQL數(shù)據(jù)庫(kù) ?> |
連接Mysql數(shù)據(jù)庫(kù)
1
|
2
3
4
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = NewADOConnection( ' mysql://root:1981427@localhost/test ' ); //連接MySQL數(shù)據(jù)庫(kù) ?> |
連接MySQL數(shù)據(jù)庫(kù)
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = NewADOConnection( 'mysql' ); $conn ->Connect( 'localhost' , 'root' , '1981427' , 'test' ); //連接MySQL數(shù)據(jù)庫(kù) ?> |
連接Access數(shù)據(jù)庫(kù)
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn = NewADOConnection( 'access' ); //連接Access數(shù)據(jù)庫(kù) $conn ->Connect( "Driver={Microsoft Access Driver (*.mdb)};Dbq= d://mydb.mdb;Uid=Admin;Pwd=; " ); ?> |
連接SQL Server數(shù)據(jù)庫(kù),通過(guò)ODBC連接
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn =NewADOConnection( 'odbc_mssql' ); //連接SQL Server數(shù)據(jù)庫(kù) $conn ->Connect( "Driver={SQL Server};Server=localhost;Database=mydb;" , 'username' , 'password' ); ?> |
連接SQL Server數(shù)據(jù)庫(kù)
1
|
2
3
4
5
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn =NewADOConnection( 'mssql' ); //連接SQL Server數(shù)據(jù)庫(kù) $conn ->Connect("localhost ', ' username ', ' password ', ' mydb'); ?> |
連接DB2數(shù)據(jù)庫(kù)
1
|
2
3
4
5
6
|
<?php include ( "adodb/adodb.inc.php" ); //包含adodb類庫(kù)文件 $conn =NewADOConnection( 'db2' ); //連接DB2數(shù)據(jù)庫(kù) $conn ->Connect("driver={IBM db2 odbc DRIVER};database=mydb;hostname=localhost;port=50000; protocol=TCPIP;uid=root; pwd=pass"); ?> |
下面來(lái)看一個(gè)PHP編程中的實(shí)例運(yùn)用:
首先定義一個(gè)數(shù)據(jù)庫(kù)連接函數(shù),支持多種不同的數(shù)據(jù)庫(kù),傳入一個(gè)SQL語(yǔ)句,將執(zhí)行結(jié)果返回,代碼如下:
1
|
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
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;"; //創(chuàng)建SQL Server數(shù)據(jù)庫(kù)連接 $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;"; //創(chuàng)建oracle數(shù)據(jù)庫(kù)連接 $conn = &NewADOConnection( 'oci8' ); $conn ->Connect( $DBServer , $DBUser , $DBPass ); break ; Case 2: //Access //$StrCon ="Driver={Microsoft Access Driver (*.mdb)};Dbq=$DBName;Uid=$DBUser;Pwd=$DBPass;"; //創(chuàng)建Access數(shù)據(jù)庫(kù)連接 $conn = &NewADOConnection( 'access' ); $conn ->Connect( "Driver={Microsoft Access Driver (*.mdb)};Dbq=" . $DBName . ";Uid=" . $DBUser . ";Pwd=" . $DBPass . ";" ); break ; Case 3: //mysql //創(chuàng)建mysql數(shù)據(jù)庫(kù)連接 $conn = NewADOConnection( 'mysql' ); $conn ->Connect( $DBServer , $DBUser , $DBPass , $DBName ); //$conn = &NewADOConnection(" mysql:// ".$DBUser.":".$DBPass."@".$DBServer."/".$DBName); break ; default : echo "抱歉,暫不支持此數(shù)據(jù)庫(kù),請(qǐng)檢查配置的數(shù)據(jù)庫(kù)類型!" ; die (); break ; } //執(zhí)行查詢操作 $result = $conn ->Execute( $sqlStr ); //數(shù)據(jù)庫(kù)查詢失敗處理 if ( $result ==false) { die ( "查詢失敗" ); } //輸出查詢結(jié)果 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; //關(guān)閉數(shù)據(jù)庫(kù)連接 $conn ->Close(); return $output ; } |
定義一個(gè)函數(shù),指明需要使用的數(shù)據(jù)庫(kù)類型,數(shù)據(jù)庫(kù)用戶名和密碼等,傳入SQL語(yǔ)句,調(diào)用上面定義的數(shù)據(jù)庫(kù)連接方法,執(zhí)行SQL語(yǔ)句。
1
|
2
3
4
5
6
7
8
9
10
11
12
13
|
public function ExecuteSql( $sqlStr ) { $DBType =1; $DBServer = "arron" ; //數(shù)據(jù)庫(kù)用戶名,不要使用sys這個(gè)超級(jí)用戶 $DBUser = "system" ; $DBPass = "abcde" ; $DBName = "" ; //$sqlStr="SELECT * FROM func;"; $myExpectStr = $this ->DBConnect( $DBType , $DBServer , $DBUser , $DBPass , $DBName , $sqlStr ); return $myExpectStr ; } } |