本篇內(nèi)容主要講解“PHP怎么實現(xiàn)對數(shù)據(jù)庫的操作”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“PHP怎么實現(xiàn)對數(shù)據(jù)庫的操作”吧!
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)金口河免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了數(shù)千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
classdbInterface{var$dbID=1;//用于確定當(dāng)前操作的數(shù)據(jù)庫,當(dāng)dbID為1代表MySQL,當(dāng)為2代表SQLServer,為3時為ODBC或其它。
var$dbHost;//數(shù)據(jù)庫所在主機域名
var$dbUsername;//數(shù)據(jù)庫用戶名
var$dbPassword;//用戶密碼
//設(shè)置主機、用戶名及密碼函數(shù)
functionsetParameter($host,$username,$password){
$this->dbUsername=$username;
$this->dbHost=$host;
$this->dbPassword=$password;
}//聯(lián)接數(shù)庫函數(shù)
functiondbConnect(){
switch($this->dbID)
{
case1;
return@mysql_connect($this->dbHost,$this->dbUsername,$this->dbPassword);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
//關(guān)閉數(shù)庫函數(shù)
functiondbClose($dataHandle){
switch($this->dbID)
{
case1;
mysql_close($dataHandle);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
//執(zhí)行SQL語句函數(shù)
functiondbQuery($dbName,$sql,$dbHandle){
switch($this->dbID)
{
case1;
return@mysql_db_query($dbName,$sql,$dbHandle);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
//檢索SQL返回值的當(dāng)前記錄函數(shù)
functiondbFetchrow($dataHandle,$offset=-1){
switch($this->dbID)
{
case1;
@mysql_data_seek($dataHandle,$offset);
return@mysql_fetch_row($dataHandle);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
//返回檢索記錄數(shù)函數(shù)
functiondbNumrows($dataHandle){
switch($this->dbID)
{
case1;
return@mysql_num_rows($dataHandle);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
//返回檢索列數(shù)函數(shù)
functiondbNumcols($dataHandle){
switch($this->dbID)
{
case1;
return@mysql_num_fields($dataHandle);
case2;
//用支持SQLServer的函數(shù)
case3;
//用支持ODBC的函數(shù)
}
}
}
PHP中怎樣對數(shù)據(jù)庫操作的封裝
現(xiàn)把使用說明如下:
在程序中用dbInterface類生一個對象$test=newdbInterface;
設(shè)置參數(shù)
test->$dbUsername;用戶名
test->$dbPassword;密碼
test->$dbHost;主機
voidsetParameter(stringhost,stringusername,stringpassword);
數(shù)據(jù)庫連接:dbhandletest->dbConnect();
返回值:fasle,數(shù)據(jù)庫連接錯誤
>0,數(shù)據(jù)庫連接句柄
數(shù)據(jù)庫關(guān)閉:voidtest->dbClose(dbhandle);
表操作:inttest->dbQuery(stringdatabasename,stringsql,dbhandle);執(zhí)行SQL語句
返回值:false,SQL執(zhí)行錯誤
>0,SQL執(zhí)行正確,同時指向SQL返回值,
數(shù)據(jù)操作:inttest->dbFetchrow(dataHandle,intoffset);檢索SQL返回值的當(dāng)前記錄,成功執(zhí)行后,指針移向下一條記錄
inttest->dbNumrows(dataHandle);取得SQL執(zhí)行后(主要為SELECT語句)獲得的記錄數(shù)
inttest->dbNumcols(dataHandle);取得SQL執(zhí)行后(主要為SELECT語句)獲得的記錄字段數(shù)
現(xiàn)在我們發(fā)一個例了講解:
數(shù)據(jù)庫采用MQSQL:其主機名為"localhost",用戶名為"root"和密碼""。
在mysql中有一個testdb數(shù)據(jù)庫及其中的表table1,表包括:name和pay兩個字段
-----
require("testdb.inc");//裝載dbInterface類
$test=newdbInterface;//用類dbInterface生成一個對象
$test->setParameter("localhost","root","");//設(shè)置數(shù)據(jù)庫參數(shù)
$db=$test->dbConnect();//連接數(shù)據(jù)庫
$Query="SELECTname,payFROMtable";//設(shè)置SQL語句
$temp_result=$test->dbQuery("testdb",$Query,$db);//執(zhí)行數(shù)據(jù)主庫操作
echo"
";
$ls_num=$test->dbNumrows($temp_result);//取得查詢結(jié)果的記錄數(shù)
echo$ls_num;
echo"
";
if(ls_num>0)
{
$ls_col=$test->dbNumcols($db);//取得表的列數(shù)
echo$ls_col;
echo"
";
$cate_result=$test->dbFetchrow($temp_result,0);//取得記錄數(shù)的第一行
$hcid=$cate_result[0];//取得name的值
$hcate=$cate_result[1];//取得pay的值
echo$hcid;
echo"
";
echo$hcate;
}
?>
這就是一個簡單的應(yīng)用封裝的類來完成對數(shù)據(jù)庫的操作。如果要操作其它數(shù)據(jù)庫只需要修改dbInterface類中的dbID變量即可。
到此,相信大家對“PHP怎么實現(xiàn)對數(shù)據(jù)庫的操作”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
網(wǎng)頁標題:PHP怎么實現(xiàn)對數(shù)據(jù)庫的操作
本文URL:http://www.rwnh.cn/article6/psgsog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、App設(shè)計、微信小程序、外貿(mào)網(wǎng)站建設(shè)、商城網(wǎng)站、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)