您的位置:首页技术文章
文章详情页

php+odbc+access数据库操作函数,在windows下测试通过

【字号: 日期:2024-02-01 15:50:22浏览:28作者:猪猪

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

<?php/* * @ access class * insert,update,delete record * version 1.0 * date 2005.6 * power by Samsun Manzalo (34n 猪八戒) * www.mypchelp.cn */

//====================================// 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<count($tmpA);$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.'<br>';$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.'<br>';$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);}

//====================================// record delete cat// 删除记录(条件)//====================================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 = 'delete from '.$table.' where '.$condition; $query; = @odbc_do($connid,$sql);}

//====================================// count record// 取得记录数//====================================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;}

?>

标签: PHP