首页 > 代码库 > YII 数据处理DAO
YII 数据处理DAO
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预处理进行信息的添加、更新、删除。
/* * 数据处理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(); }
YII 数据处理DAO
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。