16.14.13. update_row

目的

更新已有行的内容。

概要

virtual int update_row ( old_data,  
  new_data);  
const byte *  old_data ;
byte *  new_data ;

描述

这是update_row方法。

old_data将保存前一行的记录,而new_data将保存最新的数据。

如果使用了ORDER BY子句,服务器能够根据排序执行更新操作。不保证连续排序。

目前,new_data不会拥有已更新的auto_increament记录,或已更新的时间戳字段。你可以通过下述方式(例如)完成该操作:if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_UPDATE) table->timestamp_field->set_time(); if (table->next_number_field && record == table->record[0]) update_auto_increment();

sql_select.cc, sql_acl.cc, sql_update.ccsql_insert.cc调用。

参数

  • old_data

  • new_data

返回值

无返回值。

用法

          
        

默认实施

           { return  HA_ERR_WRONG_COMMAND; }
        
关注编程学问公众号