如何在不使用主键的情况下更新 Yii 中的行?
How do I update a row in Yii without using the primary key?
这是我的代码:
$model= Prices::model()->findByPk($pk);
$model->status = 1;
$model->update(array('status'));
这会使用主键更新我的行,但是我如何在 Yii 中没有 pk 的情况下更新查询。例如:
如何编写此查询:
update mytable set mycolumn = '1' where mycolumn1 ='2' and mycolumn2 = '3' and mycolumn3 = '4' ? Thx
你试过这样的第一个字符串吗?
$model= Prices::model()->findByAttributes(
array(
'mycolumn1' => 2,
'mycolumn2' => 3,
'mycolumn3' => 4
)
);
$model->mycolumn = 1;
$model->update(array('mycolumn'));
尝试使用这种方式更新您的模型 UpdateAll()
Prices::model()->updateAll(
array('mycolumn'=>1),'mycolumn1=:mycolumn1 AND
mycolumn2=:mycolumn2 AND mycolumn3=:mycolumn3',
array(':mycolumn1'=>2,':mycolumn1'=>3,':mycolumn1'=>4)
);
这是我的代码:
$model= Prices::model()->findByPk($pk);
$model->status = 1;
$model->update(array('status'));
这会使用主键更新我的行,但是我如何在 Yii 中没有 pk 的情况下更新查询。例如:
如何编写此查询:
update mytable set mycolumn = '1' where mycolumn1 ='2' and mycolumn2 = '3' and mycolumn3 = '4' ? Thx
你试过这样的第一个字符串吗?
$model= Prices::model()->findByAttributes(
array(
'mycolumn1' => 2,
'mycolumn2' => 3,
'mycolumn3' => 4
)
);
$model->mycolumn = 1;
$model->update(array('mycolumn'));
尝试使用这种方式更新您的模型 UpdateAll()
Prices::model()->updateAll(
array('mycolumn'=>1),'mycolumn1=:mycolumn1 AND
mycolumn2=:mycolumn2 AND mycolumn3=:mycolumn3',
array(':mycolumn1'=>2,':mycolumn1'=>3,':mycolumn1'=>4)
);