手机
当前位置:查字典教程网 >编程开发 >php教程 >yii框架builder、update、delete使用方法
yii框架builder、update、delete使用方法
摘要:Yii自带的querybuilder还是很好用的,省去了拼sql的过程,今天在写一个语句的时候遇到这样一个问题复制代码代码如下:$conne...

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

【yii框架builder、update、delete使用方法】相关文章:

php+dbfile开发小型留言本

PHP SPL标准库之接口(Interface)详解

php的控制语句

关于PHP中的Class的几点个人看法

4.与数据库的连接

PHP5.0对象模型探索之抽象方法和抽象类

php动态函数调用方法

最令PHP初学者头痛的十四个问题

百度工程师讲PHP函数的实现原理及性能分析(一)

PHP中preg_match函数正则匹配的字符串长度问题

精品推荐
分类导航