2
我嘗試用Yii的活動記錄刪除數據庫中的條目。但我認爲它真的很奇怪。 我要刪除我的表中的所有記錄,其中vehicle_id =給定的ID和plug_id NOT IN(指定字符串)活動記錄刪除工作爲false
我嘗試了很多的方法並沒有什麼工作,但這個
$query = "delete from `vehicle_details` where `vehicle_id`= ".$vehicle->id." AND `plug_id` NOT IN (".implode(',', array_map(function($item) {
return $item->type;
}, $vehicleDetails->plug)).")";
$command = Yii::app()->db->createCommand($query);
$command->execute();
但爲什麼ISN」這工作?
VehicleDetail::model()->DeleteAllByAttributes(
array('vehicle_id' => $vehicle->id),
array('condition' => 'plug_id NOT IN (:ids)',
'params' => array('ids' => implode(',', array_map(function($item) {
return $item->type;
}, $vehicleDetails->plug)))));
或者這樣:
VehicleDetail::model()->deleteAll(' vehicle_id = :vehicleId AND plug_id NOT IN (:ids)', array('vehicleId' => $vehicle->id, 'ids' => implode(',', array_map(function($item) {
return $item->type;
}, $vehicleDetails->plug))));
但是,如果我讓和屬性出此查詢它運作良好,並返回正確的數據的查找。
我希望你能解釋給我。
非常感謝! – EvilKarter