Yii Framework Forum: Не Выполняется Sql Запрос. - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Не Выполняется Sql Запрос. Rate Topic: -----

#1 User is offline   allush 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 11
  • Joined: 28-January 13

Posted 21 August 2013 - 02:37 AM

Здравствуйте!
что должно быть:
UPDATE table SET paramItem=NULL WHERE param=100 AND paramItem=200


есть 2 Yii запроса:
1) DAO
$command = Yii::app()->db->createCommand();
$command->reset();
$numAffectedRows = $command->update(
    'table',
    array(
        'paramItem' => null,
    ),
    'param=:param AND paramItem=:paramItem',
    array(
        ':param' => 100,
        ':paramItem' => 200,
    )
);

Результат 1 запроса = 0 строк затронуто.(и в действительности ничего не обновляется)

2) ActiveRecord
$numAffectedRows = Table::model()->updateAll(
    array(
        'paramItem' => null,
    ),
    'param=:param AND paramItem=:paramItem',
    array(
        ':param' => 100,
        ':paramItem' => 200,
    )
);

Результат 2 запроса = 500 строк затронуто.(и в действительности нужно было обновить 500 строк что и было успешно сделано)

в чем проблема, ведь запросы абсолютно идентичные с точки зрения SQL? Средствами DAO запрос не работает. Ошибок нет, просто затрагивает 0 строк.
0

#2 User is offline   ORey 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 1,694
  • Joined: 20-April 09
  • Location:Moscow, Russia

Posted 21 August 2013 - 02:51 AM

Ну например в модели может быть прописана таблица, отличная от указанной в DAO-запросе.
А вообще включите лог и посмотрите на сгенерированные запросы.
God is real unless declared as integer
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users