うーん、謎仕様。SQLインジェクションの危険あり。しかしおかげでコアのPDOへのアクセスを知ることができた。 (※このエントリの追記がこちらにあります) Model::updateAll を使う場合は、値を自前でクォートしなくてはならない // 以下、コードはすべてモデルのメソッド内と仮定 $data = '文字もじモジ'; $this -> updateAll( array( 'any_field' => $data ), array( 'id <' => 100 ) ); これ、エラーになります。$data がクォートで括られてないんですね。それにこの例ではわかりませんが、エスケープもされてないんですね。今ひとつこの仕様の合理性が分からないのですが、とにかくそういうことです。昔からそうだったのですが、今まで気づかなかった orz… http://book.cakephp.org/2.0