php+MySQL实战案例【二】php数据库辅助类

01

前言

在学习php的时候需要经常对mysql数据库进行增删改查操作,为了减少冗余代码,我们把数据操作的方法封装成一个php类。在不同的业务场景需要用到数据库表的数据操作时,只需在php文件开头引入我们的数据库辅助类,调用不用的数据操作方法,传相应的参数即可实现数据的增删改查。

我们封装的数据库辅助类,主要有以下几个关键方法:

02

GetTotal

用途: 获取当前查询SQL的总记录数。

参数:查询sql字符串。

返回值:记录总数(int)。

//取总数

    public function GetTotal($sql){

        $result = $this->mysqli->query($sql) or die($this->mysqli->error);

        return $result->num_rows;

     }

  

03

QuerySQL

用途:进行数据查询。

参数:查询sql字符串。

返回值:json格式的查询数据。

//查询 --将查询结果以标准json字符串的形式返回

    public function QuerySQL($sql){

        $arr=array();

        $result=$this->mysqli->query($sql) or die($this->mysqli->error);

        if($result){

        while($row=$result->fetch_assoc()){

            //将查询结果封装到一个数组中,返回给方法调用处

            $arr[]=$row;

        }    

        //释放查询结果资源

        $result->free();

        }    

        return json_encode($arr);

    }

  

04

PageQuerySQL

用途:以分页的形式进行数据查询。

参数:查询sql字符串、第几页、每页显示几条数据。

返回值:json格式的查询数据。

//分页查询  pageNo页数  pageSize页大小

    public function PageQuerySQL($sql,$pageNo,$pageSize){

        $arr=array();

        $sql=$sql." limit ".($pageNo-1)*$pageSize.",".$pageSize;

        $result=$this->mysqli->query($sql) or die($this->mysqli->error);

        if($result){

        while($row=$result->fetch_assoc()){

            //将查询结果封装到一个数组中,返回给方法调用处

            $arr[]=$row;

        }    

        //释放查询结果资源

        $result->free();

        }    

        return json_encode($arr);

    }

  

05

ExecSQL

用途:用于增、删、改、调用作业或存储过程。

参数:sql字符串。

返回值:状态值(int)500表示sql执行错误,200表示执行成功,400表示无记录受影响。

//非查询的SQL语句 update、delete、insert等

    public function ExecSQL($sql){

        $result=$this->mysqli->query($sql) or die($this->mysqli->error);

        if(!$result){

        return 500;//表示操作失败    

        }else{

        if($this->mysqli->affected_rows>0){

            return 200;//操作成功    

        }else{

            return 400;//没有受影响的行    

        }

        }

    }

  

06

后续

下期更新,用户管理案例的mysql数据库表结构设计。