Yii框架SQL语句操作数据库
众所周知,Yii框架的特点就是面向对象,MVC架构。他的控制层和数据层分开,每次需要对表操作的时候,新手一般都只知道调用Yii给我们提供的方法,例如:findByAttributes(array(XXX="XXX"))之类的。
但是在实际的开发中,我们发现这样的方法有些时候根本满足不了我们的需求,所以我们需要自己使用SQL来控制我们的表,因为精确的控制才能得到良好的效果,这里记录一下在YII框架中的SQL语句操作数据库
control层中的代码:
public function actionRenzhengno()
{
$criteria = new CDbCriteria;
$sql = "SELECT * FROM basic_user where authenticate=1 and uid not in(select uid from user_auth)";
$model= Yii::app()->dbcar->createCommand($sql)->queryAll();
//var_dump($model);exit();
$pages = new CPagination(count($model));
//var_dump($pages->itemCount);exit();
$pages->pageSize = 20;
$pages->applylimit($criteria);
$model=Yii::app()->dbcar->createCommand($sql." LIMIT :limit offset :offset");
$model->bindValue(':offset', $pages->currentPage*$pages->pageSize);
$model->bindValue(':limit', $pages->pageSize);
$model=$model->queryAll();
$this->render('renzhengno',array(
'model'=>$model,
'pages'=>$pages,
'all'=>$pages->itemCount,
));
}
这里只是一个小例子,各位可以根据自己的需要进行修改。

浙公网安备 33010602011771号