我想从数据库中删除更新的值。就像是否在班级表中的 notice列中插入了通知,而我想将其删除。那么yii2中的查询将是什么?请帮助-
$model = Class::find()->where('id', $id)->one;
$model->delete();
以上查询适用于-
DELETE FROM class WHERE id = $id;
我想在yii2中编写类似的查询-
DELETE notice FROM class WHERE id = $id;
答案 0 :(得分:1)
如果您使用主键进行搜索,则可以使用
$model = Class::findOne($id);
然后,要删除(设置为null)通知字段,只需使用
$model->notice = NULL;
$model->save();
请注意,如果notice属性是必需的或不为null,则保存将失败。
答案 1 :(得分:0)
Yii允许您直接执行SQL命令 https://www.yiiframework.com/doc/api/2.0/yii-db-command
$query = "DELETE notice FROM class WHERE id = {$id}";
Yii::$app->db->createCommand($query)->execute();