首页 > 代码库 > CakePHP更新数据(转载)

CakePHP更新数据(转载)

  CakePHP中更新数据的方法包括saveField()和updateAll()两种,其中前者用于保存单个字段,后者用于更新多条记录。

  saveField(string $fieldName, string $fieldValue, $validate = false)

  saveField()在调用前需要设置模型的ID($this->ModelName->id = $id)。使用该方法时,$fieldName应该只包含字段名,而不是模型名加字段名。

  例如,使用saveField更新投稿日志的标题:

$this->Post->saveField(‘title‘, ‘A New Title for a New Day‘);

  updateAll(array $fields, array $conditions)

  updateAll()将被更新的记录用$conditions数组定义,字段的值会按照$fields的定义进行更新。

  例如,对建立时间超过1年的成员进行确认,可能使用如下的更新语句:

$this_year = date(‘Y-m-d h:i:s‘, strtotime(‘-1 year‘));$this->Baker->updateAll(    array(‘Baker.approved‘ => true),    array(‘Baker.created <=‘ => "$this_year"));

  $fields>数据接收SQL表达式。文本数据需要手动地添加引号。

  例如,更改特定用户的票的状态:

$this->Ticket->updateAll(    array(‘Ticket.status‘ => "‘closed‘"),    array(‘Ticket.customer_id‘ => 453));

 

博客声明:

  本博客中的所有文章,除标题中注明“转载”字样外,其余所有文章均为本人原创或在查阅资料后总结完成,引用非转载文章时请注明此声明。—— 博客园-pallee

CakePHP更新数据(转载)