加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

拿php odbc access数据库来操作函数

发布时间:2022-03-12 06:15:26 所属栏目:编程 来源:互联网
导读:前些天下载了adodb,想用adodb连access数据库,后来连是连上了,不过不能更新和插入记录,也不知道为什么到现在还没人给我回答那个苦恼的问题,后来就放弃了adodb,使用php自己的odbc,但是使用很不方便,就写下了下面这些函数,还没有封装成类,希望能够为有同
  前些天下载了adodb,想用adodb连access数据库,后来连是连上了,不过不能更新和插入记录,也不知道为什么到现在还没人给我回答那个苦恼的问题,后来就放弃了adodb,使用php自己的odbc,但是使用很不方便,就写下了下面这些函数,还没有封装成类,希望能够为有同样问题的朋友一些帮助 。
 
  <?php
  /*
   * @ access class
   * insert,update,delete record
   * version 1.0
   * date 2005.6
   * power by Samsun Manzalo (34n 猪八戒)
   *
   */
 
  //====================================
  // 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;
  }
 
  ?>

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读