您当前的位置: 首页 > 网站编程 > PHP教程 > Yii操作数据库的3种方法

Yii操作数据库的3种方法

作者:不详 来源:网络 发布时间: 2014-08-06 23:31 点击:
这篇文章主要介绍了Yii操作数据库的3种方法,需要的朋友可以参考下 一、执行原生太SQL的PDO方式。 代码如下:$sql = ;//原生态sql语句 xx::model()-dbConnection-createCommand($sql)-execute(); 二、Active Record方式 (1)New 方式 代码如下:$post=new Post; $post-titl

Yii操作数据库的3种方法

  这篇文章主要介绍了Yii操作数据库的3种方法,需要的朋友可以参考下

  一、执行原生太SQL的PDO方式。

  代码如下:$sql = "";//原生态sql语句

  xx::model()->dbConnection->createCommand($sql)->execute();

  二、Active Record方式

  (1)New 方式

  代码如下:$post=new Post;

  $post->title='sample post';

  $post->content='post body content';

  $post->save();

  (2)Criteria方式

  也可以使用 $condition 指定更复杂的查询条件。 不使用字符串,我们可以让 $condition 成为一个 CDbCriteria 的实例,它允许我们指定不限于 WHERE 的条件。

  代码如下:$criteria=new CDbCriteria;

  $criteria->select='title'; // 只选择 'title' 列

  $criteria->condition='postID=:postID';

  $criteria->params=array(':postID'=>10);

  $post=Post::model()->find($criteria);

  一种替代 CDbCriteria 的方法是给 find 方法传递一个数组。 数组的键和值各自对应标准(criterion)的属性名和值,上面的例子可以重写为如下:

  代码如下:$post=Post::model()->find(array(

  'select'=>'title',

  'condition'=>'postID=:postID',

  'params'=>array(':postID'=>10),

  ));

  当一个查询条件是关于按指定的值匹配几个列时,我们可以使用 findByAttributes()。我们使 $attributes 参数是一个以列名做索引的值的数组。在一些框架中,此任务可以通过调用类似 findByNameAndTitle 的方法实现。虽然此方法看起来很诱人,但它常常引起混淆、冲突和比如列名大小写敏感的问题。

  三、Query Builder 方式

  代码如下:$user = Yii::app()->db->createCommand()

  ->select('id, username, profile')

  ->from('tbl_user u')

  ->join('tbl_profile p', 'u.id=p.user_id')

  ->where('id=:id', array(':id'=>$id))

  ->queryRow();
分享到:
本文"Yii操作数据库的3种方法"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4