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 相关文章推荐
PHP截取汉字乱码问题解决方法mb_substr函数的应用
Mar 30 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 PHP
php判断并删除空目录及空子目录的方法
Feb 11 PHP
php查询mysql数据库并将结果保存到数组的方法
Mar 18 PHP
PHP7之Mongodb API使用详解
Dec 26 PHP
php用正则判断是否为数字的方法
Mar 25 PHP
微信封装的调用微信签名包的类库
Jun 08 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
Dec 21 PHP
Laravel如何实现自动加载类
Oct 14 PHP
php实现断点续传大文件示例代码
Jun 19 PHP
Laravel登录失败次数限制的实现方法
Aug 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
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
php调用新浪短链接API的方法
2014/11/08 PHP
php提取字符串中网站url地址的方法
2014/12/03 PHP
php 防止表单重复提交两种实现方法
2016/11/03 PHP
总结一些PHP中好用但又容易忽略的小知识
2017/06/02 PHP
PHP递归遍历文件夹去除注释并压缩php源代码的方法示例
2018/05/23 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
从零开始学习jQuery (十) jQueryUI常用功能实战
2011/02/23 Javascript
json2.js的初步学习与了解
2011/10/06 Javascript
简单介绍JavaScript中字符串创建的基本方法
2015/07/07 Javascript
实现JavaScript的组成----BOM和DOM详解
2016/05/18 Javascript
简单实现轮播图效果的实例
2016/07/15 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
ES6新特性之Object的变化分析
2017/03/31 Javascript
JS Web Flex弹性盒子模型代码实例
2020/03/10 Javascript
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
Python中的类学习笔记
2014/09/23 Python
python扫描proxy并获取可用代理ip的实例
2017/08/07 Python
Python 处理数据的实例详解
2017/08/10 Python
PyQt5主窗口动态加载Widget实例代码
2018/02/07 Python
python删除文本中行数标签的方法
2018/05/31 Python
对Python实现累加函数的方法详解
2019/01/23 Python
Python3进制之间的转换代码实例
2019/08/24 Python
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
印尼值得信赖的在线交易网站:Bukalapak
2019/03/11 全球购物
什么是数组名
2012/05/10 面试题
查摆问题整改措施
2014/10/24 职场文书
单位租房协议范本
2014/12/03 职场文书
师德先进个人材料
2014/12/20 职场文书
具结保证书范本
2015/05/11 职场文书
小学六一主持词开场白
2015/05/28 职场文书
礼仪培训心得体会
2016/01/22 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
JavaScript中document.activeELement焦点元素介绍
2021/11/27 Javascript
openstack云计算keystone组件工作介绍
2022/04/20 Servers