yii框架builder、update、delete使用方法


Posted in PHP onApril 30, 2014

Yii自带的query builder还是很好用的,省去了拼sql的过程,今天在写一个语句的时候遇到这样一个问题

$connection = Yii::app()->db;
$command = $connection->createCommand();
$operate_rst = 0;
if(!empty($_POST['lid'])){
    $operate_rst = $command->update('emg_landing', $landing_info, 'lid=:lid', array(':lid' => $_POST['lid']));
}
else{
    $operate_rst = $command->insert('emg_landing', $landing_info);
}
$connection->active = false;
if($operate_rst > 0){
    Functions::returnOk('OK!');
}
Functions::returnErrorJson();

用 $operate_rst 来记录操作结果,执行新建insert没有问题,但是在更新时候,有时会显示操作失败,检查了半天,也找不到原因,只好去翻文档

http://www.yiiframework.com/doc/api/1.1/CDbCommand#update-detail

看到return那一项是

{return}    integer    number of rows affected by the execution.

瞬间明白问题了,因为有的时候可能没有改数据但是触发了更新操作,所以这时候受更改的行数为0,返回的判断就进入到错误代码里。。

同理,delete() 和 insert() 的方法返回值意义也是受到影响的行数,所以delete和insert可以根据返回值是否大于0来判断操作是否成功,但是update操作不一定,返回值为0也有可能表示对DB操作成功。

PHP 相关文章推荐
JAVA/JSP学习系列之七
Oct 09 PHP
PHP+DBM的同学录程序(4)
Oct 09 PHP
PHP中遍历stdclass object的实现代码
Jun 09 PHP
php学习笔记 类的声明与对象实例化
Jun 13 PHP
php抓取页面的几种方法详解
Jun 17 PHP
php 批量替换html标签的实例代码
Nov 26 PHP
php查看请求头信息获取远程图片大小的方法分享
Dec 25 PHP
PHP生成指定长度随机数最简洁的方法
Jul 14 PHP
php正则表达式基本知识与应用详解【经典教程】
Apr 17 PHP
PHP与以太坊交互详解
Aug 24 PHP
PHP中的访问修饰符简单比较
Feb 02 PHP
在Laravel的Model层做数据缓存的实现
Sep 26 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
Apr 30 #PHP
php+js iframe实现上传头像界面无跳转
Apr 29 #PHP
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
Apr 29 #PHP
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
Apr 29 #PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 #PHP
PHP include任意文件或URL介绍
Apr 29 #PHP
php调用google接口生成二维码示例
Apr 28 #PHP
You might like
php生成xml简单实例代码
2009/12/16 PHP
PHP和.net中des加解密的实现方法
2013/02/27 PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
2019/09/02 PHP
Laravel6.18.19如何优雅的切换发件账户
2020/06/14 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
javascript实现的固定位置悬浮窗口实例
2015/04/30 Javascript
jQuery height()、innerHeight()、outerHeight()函数的区别详解
2016/05/23 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
用js实现简单算法的实例代码
2016/09/24 Javascript
浅谈Angular的$q, defer, promise
2016/12/20 Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
2017/02/22 Javascript
各种选择框jQuery的选中方法(实例讲解)
2017/06/27 jQuery
JavaScript定时器setTimeout()和setInterval()详解
2017/08/18 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
基于vue.js实现分页查询功能
2018/12/29 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
[00:31]2016完美“圣”典风云人物:国士无双宣传片
2016/12/04 DOTA
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
浅谈Python2.6和Python3.0中八进制数字表示的区别
2017/04/28 Python
Python 利用pydub库操作音频文件的方法
2019/01/09 Python
python实现高斯判别分析算法的例子
2019/12/09 Python
Flask和pyecharts实现动态数据可视化
2020/02/26 Python
python用TensorFlow做图像识别的实现
2020/04/21 Python
Django生成数据库及添加用户报错解决方案
2020/10/09 Python
Omio中国:全欧洲低价大巴、火车和航班搜索和比价
2018/08/09 全球购物
中学生爱国演讲稿
2013/12/31 职场文书
行政主管职责范本
2014/03/07 职场文书
党员公开承诺事项
2014/03/25 职场文书
《明天,我们毕业》教学反思
2014/04/24 职场文书
计算机实训报告范文
2014/11/05 职场文书
java executor包参数处理功能 
2022/02/15 Java/Android