当前位置: 移动技术网 > IT编程>开发语言>PHP > yii框架builder、update、delete使用方法

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

2019年03月27日  | 移动技术网IT编程  | 我要评论

御龙征程txt下载,非主流美女,洛阳信息港

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操作成功。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网