YII数据库操作(CURD操作)
数据库操作
获得模型对象
$model = 模型名::model();或$model = new 模型名();
1、查询多条记录(返回值:二维数组)
$result = $model->findAll();
$result = $model->findAll(条件);
$result = $model->findAll(array("select"=>"字段,字段,字段..."));//限制查询显示的字段
$result = $model->findAll(array("select"=>"字段,字段,字段...","condition"=>"条件"));//限制查询显示的字段与条件
$result = $model->findAll(array("select"=>"字段,字段,字段...","condition"=>"条件","order"=>"字段 desc"));//限制查询显示的字段、条件、排序
$result = $model->findAll(array("select"=>"字段,字段,字段...","condition"=>"条件","order"=>"字段 desc","limit"=>条数,"offset"=>起始值));//限制查询显示的字段、条件、排序、limit、offset
$result = $model->findAllBySql("select语句");
2、查询一条记录(返回值:一维数组)
$model = 模型名::model();或$model = new 模型名();
$result = $model->find();
$result = $model->find(条件);
$result = $model->findByPK(主键);
$result = $model->findByPK(array(主键1,主键2...));
$result = $model->findBySql("select语句");
3、添加记录(返回值:受影响的行数)
$model = new 模型名();
$model->字段 = 值;
$model->字段 = 值;
$model->字段 = 值;
$result = $model->save();
4、删除记录(返回值:受影响的行数)
$model = 模型名::model();或$model = new 模型名();
$result = $model->deleteAll("条件");
$result = $model->deleteByPK(主键值);
$result = $model->deleteByPK(array(主键1,主键2...));
5、修改记录(返回值:受影响的行数)
$model = 模型名::model();或$model = new 模型名();
$result = $model->updateAll(关联数组,条件);
$result = $model->updateByPK(主键,关联数组);
$result = $model->updateByPK(array(主键1,主键2...),关联数组);
6、执行sql语句(返回值:二维数组)
$db = Yii::app()->db;
$st = $db->createCommand("select查询语句");
$rs = $st->queryAll();//获得多条记录
7、执行sql语句(返回值:一维数组)
$db = Yii::app()->db;
$st = $db->createCommand("select查询语句");
$rs = $st->queryRow();//获得一条记录
8、执行sql语句(返回值:一维数组)
$db = Yii::app()->db;
$st = $db->createCommand("select查询语句");
$rs = $st->queryColumn();//获得第一个字段的所有记录
9、执行sql语句(返回值:二维数组)
$db = Yii::app()->db;
$st = $db->createCommand("select查询语句");
$obj = $st->query();
$rs = $st->readAll();//获得多条记录
10、执行sql语句(返回值:一维关联数组)
$db = Yii::app()->db;
$st = $db->createCommand("select查询语句");
$obj = $st->query();
$rs = $obj->read();//获得一条记录
11、执行sql语句(返回值:受影响的行数)
$db = Yii::app()->db;
$st = $db->createCommand("insert、update、delete语句");
$rs = $st->execute();//执行insert、update、delete语句
12、执行sql语句,绑定参数(返回值:成功还是失败)
$db = Yii::app()->db;
$st = $db->createCommand("insert、update、delete语句");
$st->bindParam(":名",$变量,PDO::PARAM_STR);
$st->bindParam(":名",$变量,PDO::PARAM_STR);
$st->bindParam(":名",$变量,PDO::PARAM_STR);
$rs = $st->execute();//执行insert、update、delete语句
13、获得查询到的记录数(返回值:数字值)
$model = 模型名::model();或$model = new 模型名();
$totalRow = $model->count();
$totalRow = $model->count(条件);
14、通过CDbCriteria类来实现查询操作(返回值:二维数组)
位置:framework/db/schema/CDbCriteria.php
$model = new Model();或$model = 类名::model()
$criteria = new CDbCriteria();
$criteria->select = "字段,字段,字段|*";
$criteria->condition = "条件";
$criteria->order = "排序";
$criteria->limit = 条数;
$criteria->offset = 起始值;
$result = $model->findAll($criteria);
YII数据库操作(CURD操作)的更多相关文章
- YII数据库增删查改操作
初学YII, 整理了一些YII数据库的相关操作, 共同学习,共同进步. 一.查询数据集合 //1.该方法是根据一个条件查询一个集合 $admin=Admin::model()->findAll ...
- 通过Mybatis原始Dao来实现curd操作
环境的配置见我上一篇博客. 首先,在上一篇博客中,我们知道,SqlSession中封装了对数据库的curd操作,通过sqlSessionFactory可以创建SqlSession,而SqlSessio ...
- TP中CURD操作
CURD操作 CURD操作也就是模型操作数据表的基本操作.C(Create).U(Update).R(Read).D(Delete)操作就是增删改查操作. 6.1.增加操作 回想一下在mysql中增加 ...
- 使用yii AR 完成单个表的CURD操作
什么是AR(ActiveRecord) Active Record (活动记录,以下简称AR)提供了一个面向对象的接口, 用以访问数据库中的数据.一个 AR 类关联一张数据表, 每个 AR 对象对应表 ...
- Laravel框架数据库CURD操作、连贯操作使用方法
Laravel框架数据库CURD操作.连贯如何来操作了这个操作性是非常的方便简单了我们在这里来为各位介绍一篇相关的教程,具体的细节步骤如下文介绍. Laravel是一套简洁.优雅的PHP Web开 ...
- Laravel框架数据库CURD操作、连贯操作
这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 $users = DB::t ...
- Laravel框架数据库CURD操作、连贯操作总结
这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 复制代码代码如下: $use ...
- 数据库操作CURD
JDBCCURD操作实例 19. 五 / J2EE / 没有评论 代码目录结构: domain javabean: util 工具类 jdbcUtil是连接数据mysql数据库的工具类 ...
- SQL数据库操作(CURD)
对数据仓库的操作(CURD): 新增: create database db_test; 新增的时候设置编码: create database da_test_1 character set utf ...
- Laravel框架中的数据库CURD操作、连贯操作、链式操作的用法
Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁.富于 ...
随机推荐
- 使用 Azure Site Recovery 灾难恢复至 Azure 的功能现已正式发布
ABHISHEK A. HEMRAJANI 云 + Enterprise项目经理 自我们宣布发布使用 Azure SiteRecovery 灾难恢复至 Azure的功能预览版以来,这几个月着实令人 ...
- EMC
1.EMC的概念 EMC(Electro Magnetic Compatibility)即电磁兼容,是指设备或系统在其电磁环境中符合要求运行并不对其环境中的任何设备产生无法忍受的电磁干扰的能力.就是它 ...
- [MarsZ]程序猿谈大学之工作三年半的程序猿给大学童鞋的一些注释
我本不是个喜欢写文章的人,更甭提写这种基本没技术含量的文章了.但是今天上班的时候,不经意浏览了下学校的QQ群,突然很想把自己的经验经历分享给还在大学里的同学,希望能让某些对前途职业迷茫的童鞋有所帮助. ...
- Clean Code – Chapter 4: Comments
“Don’t comment bad code—rewrite it.”——Brian W.Kernighan and P.J.Plaugher The proper use of comments ...
- Drupal安装及使用问题解决列表
#1. 启动 Clean URL 修改Apache的配置文件(如httpd.conf),打开 LoadModule rewrite_module modules/mod_rewrite.so选项.然后 ...
- Call Hierarchy(方法调用层次)
在VS2010中的一项新功能:Call Hierarchy窗口,它可以审查代码,确定方法在哪里调用,以及它们与其他方法的关系. 打开一个类文件,找有方法体实现代码的方法,右键选择View Call H ...
- WPF线程获取UI线程
WPF中只能是UI线程才可以改变UI控件相关,当采用多线程工作时,可用以下代码获取 UI线程进行操作: App.Current.Dispatcher.Invoke((Action)delegate() ...
- iOS网络编程(三) 异步加载及缓存图片---->SDWebImage
@SDWebImage提供一个UIImageView的类别以支持加载来自网络的远程图片.具有缓存管理.异步下载.同一个URL下载次数控制和优化等特征. @SDWebImage的导入1.https:// ...
- eclipse老是卡在Refreshing workspace
最近老是遇到eclipse没有响应,参考网络上的相关帖子做了些优化,但问题依旧. 后来发现出现这个问题一般都是eclipse无响应,直接结束进程后导致的,看了下eclipse日志,果真如此. !SES ...
- ip_conntrack缓存neighbour
在我的ip_conntrack版本中,它目前已经可以缓存路由,filter规则等,还可以平滑生效最新配置的NAT,它越来越像真正的SDN了,唯一有待完善的就是将5元组的tuple进化成N元组的tupl ...