Yii1 数据库操作

kevin.Zhu 发布于:2017-11-24 12:03 分类:Php  有 20 人浏览,获得评论 0 条  

http://blog.sina.com.cn/s/blog_6aba78b40102wfmz.html


一、查询

Yii::app()->db->createCommand($sql)->queryAll(); //查询所有行数据

Yii::app()->db->createCommand($sql)->queryRow(); //查询第一行数据

Yii::app()->db->createCommand($sql)->queryColumn(); //查询第一列数据

Yii::app()->db->createCommand($sql)->queryScalar(); //查询第一行的第一字段

二、执行

Yii::app()->db->createCommand($sql)->execute(); //创建、更新、删除,的执行

三、插入insert

$result = Yii::app()->db->createCommand()->insert('table表名',

         array(

                  'column1' => $value1, 

                  'column2' => $value2,

                  'column3' =>$value3,

                  'create_time' => time(),              
        )
); 

         获取插入id号:Yii::app()->db->getLastInsertID()

四、更新update

$result = Yii::app()->db->createCommand()->update('table表名', 

         array(  

                  'column1' => $value1, 

                  'column2' => $value2,

                  'column3' =>$value3,

                  'update_time' => time(),

         ),

         "id=:id", array(':id' => $id)

);

五、删除delete

$result = Yii::app()->db->createCommand()->delete('table表名',

         "id=:id", array(':id' => $id)

);
六、select其他写法
单表查询
$goodsTypes = Yii::app()->db->createCommand()
         ->select('type_id, type_name')
         ->from('goods_type')
         ->where('status=1')
         ->queryAll();

连表查询
$goods = Yii::app()->db->createCommand()
        ->from('goods g')
        ->select('g.good_id, g.good_name, gt.type_name, g.price, g.buy_nums, g.commit_nums, g.create_time')
        ->join('goods_type gt', 'g.good_type=gt.type_id')
        ->where('g.`status`=1 and gt.`status`=1')
        ->order('g.create_time desc')
        ->queryAll();

  1. // 首先要实例化一个CDbCommand对象  
  2. $command Yii::app()->db->createCommand();     // 注意参数留空了。。  
  3. // 可用的方法列表如下:  
  4. ->select(): SELECT子句  
  5. ->selectDistinct(): SELECT子句,并保持了记录的唯一性  
  6. ->from():         构建FROM子句  
  7. ->where():        构建WHERE子句  
  8. ->join():         在FROM子句中构建INNER JOIN 子句  
  9. ->leftJoin():     在FROM子句中构建左连接子句  
  10. ->rightJoin():    在FROM子句中构建右连接子句  
  11. ->crossJoin():    添加交叉查询片段(没用过)  
  12. ->naturalJoin():  添加一个自然连接子片段  
  13. ->group():        GROUP BY子句  
  14. ->having():       类似于WHERE的子句,但要与GROUP BY连用  
  15. ->order():        ORDER BY子句  
  16. ->limit():        LIMIT子句的第一部分  
  17. ->offset():       LIMIT子句的第二部分  
  18. ->union():        appends UNION query fragment