2016-04-17 2 views
-1

У меня есть таблицы базы данных 'cat_ralation'Yii2: обновление поля Ошибка Unknown столбец с построитель запросов

CREATE TABLE IF NOT EXISTS `cat_relation` (
`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, 
`cat_id` int(11) NOT NULL, 
`obj_id` int(11) NOT NULL, 
`obj_type` varchar(20) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

вставки данных

id = 1, 
cat_id = 2, 
obj_id = 3, 
obj_type = product 

Qyery строитель

Yii::$app->db 
    ->createCommand() 
    ->update('cat_relation',['cat_id'=>3], 'obj_id = 3 AND obj_type = product') 
    ->execute(); 

ошибка

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'product' in 'where clause' 
The SQL being executed was: UPDATE `cat_relation` SET `cat_id`=2 WHERE obj_id = 4 AND obj_type = product 
+0

Я не знаю ничего о PyYAML, но ты не должен процитировать 'product' в кавычках, как' "продукта" или '\» продукт \ ''? –

+0

Где находится отношение к PyYAML? Я не вижу ни одного YAML в ваших примерах. Каков ваш реальный вопрос? – Anthon

+0

похоже, что ваш проект находится в yii2 – Midhun

ответ

0

сделать это как

Yii::$app->db 
    ->createCommand() 
    ->update('cat_relation',['cat_id'=>3], "obj_id = 3 AND obj_type = 'product'") 
    ->execute();