您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > PHP框架 > Yii Framework

YII 数据处理DAO

作者:buyingfei888  来源:CSDN博客  日期:2014-10-28 22:52:33
收藏  评论:( 0 )  阅读:423

Yii框架对数据处理可以通过两种方式:AR、DAO(数据处理对象)

前者主要是对简单sql语句处理

后者才是处理复杂sql语句


两种使用的基础是PDO,php data  object   : php数据对象

PDO就是为了兼容php处理各种数据库(mysql  oracle  sqlserver等等)


我们定义一条sql语句就可以 在mysql、oracle、sqlserver不同数据库来运行。


AR:处理数据CActiveRecord

DAO对数据的处理 CdbCommand  CdbDataReader


query() 针对查询

execute()  针对 添加、修改、删除


PDO预处理进行信息的添加、更新、删除。


YII 数据处理DAO

/*
     * 数据处理DAO  实现数据查询
     */
    function actionCat(){
        //通过DAO方式读取数据
        $sql = "select * from {{goods}}";
        //1. 创建DAO对象
        $d_obj = Yii::app()->db->createCommand($sql);
                                                 
        //2. 执行sql语句
        //   查询:dao对象query() 返回一个结果对象CDbDataReader
        //         queryAll()  直接获得全部记录结果
        //         queryRow()  获得第一条记录结果
        //         queryColum() 获得第一列的记录结果
        //   非查询:execute()
                                                 
        // read():通过具体CDbDataReader这个类里边的方法获得具体结果
        // readAll(): 获得全部记录结果
        //$data_obj = $d_obj -> query();
        //$info = $data_obj -> read();  //获得一条记录结果,一维数组
        //$info = $data_obj->readAll();  //获得全部记录结果,二维数组
                                                 
        //$info = $d_obj -> queryAll();  //直接获得全部信息结果
        //$info = $d_obj -> queryRow();  //直接第一条记录结果
                                                 
        //var_dump($info);
        //var_dump($data_obj);
    }
                                             
    /*
     * 通过DAO实现数据的添加
     */
    function actionCat2(){
        $sql = "insert into {{goods}} (goods_name,goods_price) values (:name,:price)";
        $d_obj = Yii::app()->db -> createCommand($sql);
        $name = "apple678";
        $price = 5050;
        //把定义的两个变量绑定到占位符里边
        $d_obj -> bindParam(':name',$name,PDO::PARAM_STR);
        $d_obj -> bindParam(':price',$price,PDO::PARAM_INT);
        $d_obj -> execute();
                                                 
        $name = "诺基亚678";
        $price = 3999;
        //把定义的两个变量绑定到占位符里边
        $d_obj -> bindParam(':name',$name,PDO::PARAM_STR);
        $d_obj -> bindParam(':price',$price,PDO::PARAM_INT);
        $d_obj -> execute();
                                                 
//        $num = $d_obj -> execute();  //会返回当前受影响的记录数目
//
//        //可以使用PDO预处理方式实现信息添加
//        $sql = "insert into {{article}} (article_title,article_content) values (:title,:content) ";
//        $command = $connection -> createCommand($sql);
//        $title = "rr";
//        $content = "rr";
//        $command ->bindParam(":title", $title, PDO::PARAM_STR);
//        $command ->bindParam(":content", $content, PDO::PARAM_STR);
//        $rowCount = $command -> execute();
                                         
                                                 
    }


原文地址:http://blog.csdn.net/buyingfei8888/article/details/40556559




Yii框架
 
DAO
 
除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/yii/1045.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论