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,而且每行代码都可以简洁.富于 ...
随机推荐
- Git submodule实战
http://blog.jqian.net/post/git-submodule.html 使用git管理的项目开发中,如果碰到公共库和基础工具,可以用submodule来管理. 常用操作 例如, 公 ...
- 《C#并行编程高级教程》第7章 VS2010任务调试 笔记
没有什么好说的,主要是将调试模式下的Parallel Tasks窗体和Parallel Stacks窗体.折腾一下应该比看书效果好.(表示自己没有折腾过) 另外值得注意的是,主线程不是一个任务.所以主 ...
- 一例胜千言,详谈SQL Sever数据库锁
1 前言 数据库大并发操作要考虑死锁和锁的性能问题.看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一 ...
- ZOJ3261 Connections in Galaxy War 并查集
分析:对于这种删边操作,我们通常可以先读进来,然后转化离线进行倒着加边 #include <stdio.h> #include <string.h> #include < ...
- HDU4370 0 or 1 最短路
分析: 1001 (已更新) 显然,题目给的是一个0/1规划模型.解题的关键在于如何看出这个模型的本质.3个条件明显在刻画未知数之间的关系,从图论的角度思考问题,容易得到下面3个结论:1.X12+X ...
- 【原】 Spark中Worker源码分析(二)
继续前一篇的内容.前一篇内容为: Spark中Worker源码分析(一)http://www.cnblogs.com/yourarebest/p/5300202.html 4.receive方法, r ...
- 【HTML】Beginner8:Table
1.Table Abused to lay out pages The correct use for tables is to do exactly what you would ex ...
- POJ2250 - Compromise(LCS+打印路径)
题目大意 给定两段文本,问公共单词有多少个 题解 裸LCS... 代码: #include<iostream> #include<string> using namespace ...
- get方法
public string HttpGet(string Url, string postDataStr) { HttpWebRequest request = (HttpWebRequest)Web ...
- 高性能以太网芯片W5500 数据手册 V1.0(二)
继续给大家介绍W5500 数据手册. 2.4 固定数据长度模式(FDM) 在外设主机不能控制 SCSn 时,可以使用固定数据长度模式. 此时,SCSn 必须连接到低电平(保持接地).与此同 ...