how do I delete rows in Yii?

只谈情不闲聊 提交于 2019-12-22 03:51:11

问题


Using Yii, I want to delete all the rows that are not from today.

Is my solution ok ?

$query = "delete from `user_login_hash` where `day`!='".(date('Y-m-d',time()))."'";

Yii::app()->db->createCommand($query);

回答1:


A prettier solution is

YourUserModel::model()->deleteAll("day !='" . date('Y-m-d') . "'");



回答2:


Better user PDO parameters and on command you also have to call execute

$query = "delete from `user_login_hash` where `day`<> :date";
$command = Yii::app()->db->createCommand($query);
$command->execute(array('date' => date('Y-m-d')));

or

UserLoginHash::model()->deleteAll(
    'day <> :date',
    array('date' => date('Y-m-d'))
);



回答3:


Try this...

 $query = "delete from `user_login_hash` where `day`!='".(date('Y-m-d',time()))."'";
                        $query->queryAll($query);



回答4:


You may use query builder

$command = Yii::app()->db->createCommand()
    ->delete('user_login_hash', 'day !=' . date('Y-m-d'));

http://www.yiiframework.com/doc/guide/1.1/en/database.query-builder#sec-15



来源:https://stackoverflow.com/questions/10800256/how-do-i-delete-rows-in-yii

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!