明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

一段代碼示例代碼,目前可以兼容odbc 與 OCI 2種連接數(shù)據(jù)庫方法!

[摘要]PHP 作的最不好的一點(diǎn)就是為每一種數(shù)據(jù)庫都設(shè)計了一種數(shù)據(jù)庫連接方法,這樣雖然可以兼容大多數(shù)的數(shù)據(jù)庫,但是一旦數(shù)據(jù)庫需要改變,則大事不妙!在這里,我給大家介紹一種我自己的一點(diǎn)心得,希望能夠起到拋磚引玉的效果!我的程序代碼如下:<? function openConn() //打開數(shù)據(jù)庫連接 ...
PHP 作的最不好的一點(diǎn)就是為每一種數(shù)據(jù)庫都設(shè)計了一種數(shù)據(jù)庫連接方法,這樣雖然可以兼容大多數(shù)的數(shù)據(jù)庫,但是一旦數(shù)據(jù)庫需要改變,則大事不妙!
在這里,我給大家介紹一種我自己的一點(diǎn)心得,希望能夠起到拋磚引玉的效果!
我的程序代碼如下:
<?
function openConn(){
 //打開數(shù)據(jù)庫連接
 //ODBC:
 //$conn=odbc_connect("dsn","uid","pwd");
 //OCI 函數(shù)
 $conn=ocilogon("chat","chat");
 return $conn;
}
function openSql($conn,$sql){
//執(zhí)行 sql 語句
//ODBC
//$stmt=odbc_exec($conn,$sql);
//OCI
 $stmt=ociparse($conn,$sql);
ociexecute($stmt);
return $stmt;
}
function GetColumn($stmt,$colname){
 //odbc
 //$ret=odbc_result($stmt,$colname);
 //OCI
 $ret=ociresult($stmt,$colname);
 return $ret;
}
function FecthRow($stmt){
//ODBC
//$ret=odbc_fetch_row($stmt);
//OCI
$ret=ocifetch($stmt);
return $ret;
}
?>
這樣,一旦數(shù)據(jù)庫連接發(fā)生變化,我們只需要修改這個函數(shù)模塊即可!
在實(shí)際的應(yīng)用中的代碼如下:
<?
 $conn=openconn();
 $stmt=opensql($conn,$sql);
 fetchrow($stmt);
 echo getcolumn($stmt,"COLUMNNAME");
?>
歡迎大家批評指導(dǎo)!