首頁  >  文章  >  後端開發  >  php的access操作類別實例程式碼

php的access操作類別實例程式碼

怪我咯
怪我咯原創
2017-07-14 10:29:372184瀏覽

 Access是由微軟發佈的關聯式資料庫管理系統。它結合了 MicrosoftJet Database Engine 和 圖形使用者介面兩項特點,是 Microsoft Office 的系統程式之一。

Microsoft Office Access是微軟把資料庫引擎的圖形使用者介面和軟體開發工具結合在一起的一個資料庫管理系統。它是微軟OFFICE的一個成員, 在包括專業版和更高版本的office版本裡面被單獨出售。 2012年12月4日,最新的微軟Office Access 2016在微軟Office 2016裡發布,微軟Office Access 2013 是前一個版本。

MS ACCESS以它自己的格式將資料儲存在基於Access Jet的資料庫引擎中。它也可以直接導入或連結資料(這些資料儲存在其他應用程式和資料庫)。

軟體開發人員和資料架構師可以使用Microsoft Access開發應用軟體,「進階使用者」可以使用它來建立軟體應用程式。和其他辦公室應用程式一樣,ACCESS支援Visual Basic宏語言,它是一個物件導向程式語言,可以引用各種對象,包括DAO(資料存取對象),ActiveX資料物件,以及許多其他的ActiveX組件。可視化物件用於顯示表格和報表,他們的方法和屬性是在VBA程式設計環境下,VBA程式碼模組可以聲明和呼叫Windows作業系統函數。

這篇文章主要介紹會用Access資料庫操作類別實作程式碼,程式碼如下:

<?php     
--------------------------------------------------------------------     
//FileName:class.php     
//Summary: Access数据库操作类     
//Author:  forest     
//CreateTime: 2006-8-10          
//LastModifed:     
//copyright (c)2006      
//http://freeweb.nyist.net/~chairy       
//[email]chaizuxue@163.com[/email]     
//   使用范例:     
//$databasepath="database.mdb";     
//$dbusername="";     
//$dbpassword="";     
//include_once("class.php");     
//$access=new Access($databasepath,$dbusername,$dbpassword);     

--------------------------------------------------------------------     
    class Access     
    {     
         var $databasepath,$constr,$dbusername,$dbpassword,$link;     
         function Access($databasepath,$dbusername,$dbpassword)     
         {     
               $this->databasepath=$databasepath;     
        $this->username=$dbusername;     
        $this->password=$dbpassword;     
        $this->connect();     
          }     

    function connect()     
    {     
        $this->constr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath($this->databasepath);      
        $this->link=odbc_connect($this->constr,$this->username,$this->password,SQL_CUR_USE_ODBC);     
        return $this->link;     
        //if($this->link) echo "恭喜你,数据库连接成功!";     
        //else echo "数据库连接失败!";     
    }     

    function query($sql)     
    {     
        return @odbc_exec($this->link,$sql);     
    }     

    function first_array($sql)     
    {     
        return odbc_fetch_array($this->query($sql));     
    }     

    function fetch_row($query)     
    {     
        return odbc_fetch_row($query);     
    }     

    function total_num($sql)//取得记录总数     
    {     
        return odbc_num_rows($this->query($sql));     
    }     

    function close()//关闭数据库连接函数     
    {         
        odbc_close($this->link);     
    }     

    function insert($table,$field)//插入记录函数     
    {     
        $temp=explode(&#39;,&#39;,$field);     
        $ins=&#39;&#39;;     
        for ($i=0;$i<count($temp);$i++)     
        {     
            $ins.="&#39;".$_POST[$temp[$i]]."&#39;,";     
        }     
        $ins=substr($ins,0,-1);     
        $sql="INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";     
        $this->query($sql);     
    }     

    function getinfo($table,$field,$id,$colnum)//取得当条记录详细信息     
    {     
        $sql="SELECT * FROM ".$table." WHERE ".$field."=".$id."";     
        $query=$this->query($sql);     
        if($this->fetch_row($query))     
        {     
            for ($i=1;$i<$colnum;$i++)     
            {     
          $info[$i]=odbc_result($query,$i);     
             }     
         }     
         return $info;     
    }     

    function getlist($table,$field,$colnum,$condition,$sort="ORDER BY id DESC")//取得记录列表         
    {     
         $sql="SELECT * FROM ".$table." ".$condition." ".$sort;     
         $query=$this->query($sql);     
         $i=0;     
         while ($this->fetch_row($query))      
         {     
        $recordlist[$i]=getinfo($table,$field,odbc_result($query,1),$colnum);     
        $i++;     
          }     
          return $recordlist;     
    }     

    function getfieldlist($table,$field,$fieldnum,$condition="",$sort="")//取得记录列表     
    {     
         $sql="SELECT ".$field." FROM ".$table." ".$condition." ".$sort;     
         $query=$this->query($sql);     
         $i=0;     
         while ($this->fetch_row($query))      
         {     
         for ($j=0;$j<$fieldnum;$j++)     
        {     
                   $info[$j]=odbc_result($query,$j+1);     
        }         
        $rdlist[$i]=$info;     
        $i++;     
         }     
         return $rdlist;     
    }     

    function updateinfo($table,$field,$id,$set)//更新记录     
    {     
        $sql="UPDATE ".$table." SET ".$set." WHERE ".$field."=".$id;     
        $this->query($sql);     
    }     

    function deleteinfo($table,$field,$id)//删除记录     
    {     
         $sql="DELETE FROM ".$table." WHERE ".$field."=".$id;     
         $this->query($sql);     
    }     

    function deleterecord($table,$condition)//删除指定条件的记录     
    {     
         $sql="DELETE FROM ".$table." WHERE ".$condition;     
         $this->query($sql);     
    }     

    function getcondrecord($table,$condition="")// 取得指定条件的记录数     
    {     
         $sql="SELECT COUNT(*) AS num FROM ".$table." ".$condition;     
         $query=$this->query($sql);     
         $this->fetch_row($query);     
         $num=odbc_result($query,1);     
         return $num;                 
    }     
     }     
?>


以上是php的access操作類別實例程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn