ホームページ  >  記事  >  バックエンド開発  >  php+odbc+access データベース操作関数、windows_PHP チュートリアルでテスト済み

php+odbc+access データベース操作関数、windows_PHP チュートリアルでテスト済み

WBOY
WBOYオリジナル
2016-07-13 17:34:571070ブラウズ

    前些天下载了adodb,想用adodb连access数据库,后来连是连上了,不过不能更新和插入记录,也不知道为什么到现在还没人给我回答那个苦恼的问题,后来就放弃了adodb,使用php自己的odbc,但是使用很不方便,就写下了下面这些函数,还没有封装成类,希望能够为有同样问题的朋友一些帮助

/*
 * @ access class
 * insert,update,delete record
 * version 1.0
 * date 2005.6
 * power by Samsun Manzalo (34n 猪八戒)
 * www.knowsky.com
 */

//====================================
// insert record
// 插入记录
//====================================
function insRd($table,$field){
$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
$tmpA = explode(,,$field);
$ins = ;
for($i=0;$i $ins.= "".$_POST[$tmpA[$i]].",";
}
$ins = substr($ins,0,-1);
$sql = "INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";
//echo $sql;exit;
$query = @odbc_do($connid,$sql);
}


//====================================
// get one record detail
// 取得当条记录详细信息
//====================================
function getInfo($table,$field,$id,$colnum){
$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
$sql = "select * from ".$table." where ".$field."=".$id;
$query = @odbc_do($connid,$sql);

if(odbc_fetch_row($query)){
for($i=0;$i<$colnum;$i++){
$info[$i] = odbc_result($query,$i+1);
}
}
return $info;
}


//====================================
// get record list
// 取得记录列表
//====================================
function getList($table,$field,$colnum,$condition,$sort="order by id desc"){
$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
$sql = "select * from ".$table." ".$condition." ".$sort;
$query = @odbc_do($connid,$sql);
//echo $sql."
";
 $i  = 0;
 while(odbc_fetch_row($query)){
  $rdList[$i] = getInfo($table,$field,odbc_result($query,1),$colnum);
  $i++;
 }
 return $rdList;
}


//====================================
// get record list condition
// 取得记录列表
//====================================
function getFieldList($table,$field,$fieldnum,$condition="",$sort=""){
 $connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
 $connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
 $sql = "select ".$field." from ".$table." ".$condition." ".$sort;
 $query  = @odbc_do($connid,$sql);
 //echo $sql."
";
 $i  = 0;
 while(odbc_fetch_row($query)){
  for($j=0;$j<$fieldnum;$j++){
   $info[$j] = odbc_result($query,$j+1);
  }
  $rdList[$i] = $info;
  $i++;
 }
 return $rdList;
}

//====================================
// update record
// 更新记录
//====================================
function updateInfo($table,$field,$id,$set){
 $connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
 $connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
 $sql = "update ".$table." set ".$set." where ".$field."=".$id;
 $query  = @odbc_do($connid,$sql);
}


//====================================
// record delete
// 删除记录
//====================================
function delRd($table,$field,$id){
 $connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
 $connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    $sql = "delete from ".$table." where ".$field."=".$id;
    $query  = @odbc_do($connid,$sql);
}


//====================================
// 録音削除猫
// 删除记录(条件)
//====================================
function delOrRd($table, $condition){
$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ( "データベース库连接错误!");
$sql = "「.$table.」から削除します。" where ".$condition;
$query = @odbc_do($connid,$sql);
}


//====================================
// カウント記録
// 记录取得数
//====================================
function countRd($table,$condition= ""){
$connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
$connid = @odbc_connect($connstr,"","",SQL_CUR_USE_ODBC ) or die ( "データベース库连接错误!");
$sql = "select count(*) as num from ".$table." ".$condition;
$query = @odbc_do($connid,$sql);
odbc_fetch_row($ query);
$num = odbc_result($query,1);
return $num;
}

?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/508382.html技術記事前に天下播了adodb、想用adodb连accessデータベース库、後来连上了、不过不更新および插入记录、不知道是何を為到现在还没人给我回答那个苦恼的...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。