4214
4214
param->copy_field_end=copy;
4215
4215
param->recinfo=recinfo;
4216
store_record(table,s->default_values); // Make empty default record
4216
table->storeRecordAsDefault(); // Make empty default record
4218
4218
if (session->variables.tmp_table_size == ~ (uint64_t) 0) // No limit
4219
4219
share->max_rows= ~(ha_rows) 0;
4890
4890
bool Table::compare_record()
4892
4892
if (s->blob_fields + s->varchar_fields == 0)
4893
return cmp_record(this, record[1]);
4893
return memcmp(this->record[0], this->record[1], (size_t) s->reclength);
4894
4894
/* Compare null bits */
4895
4895
if (memcmp(null_flags,
4896
4896
null_flags + s->rec_buff_length,
4910
* Store a record from previous record into next
4913
void Table::storeRecord()
4915
//memcpy( a->record[1], a->record[0], (size_t) a->s->reclength )
4916
memcpy( record[1], record[0], (size_t) s->reclength );
4920
* Store a record as an insert
4923
void Table::storeRecordAsInsert()
4925
memcpy( insert_values, record[0], (size_t) s->reclength );
4929
* Store a record with default values
4932
void Table::storeRecordAsDefault()
4934
memcpy( s->default_values, record[0], (size_t) s->reclength );
4938
* Restore a record from previous record into next
4941
void Table::restoreRecord()
4943
//memcpy( a->record[1], a->record[0], (size_t) a->s->reclength )
4944
memcpy( record[0], record[1], (size_t) s->reclength );
4948
* Restore a record with default values
4951
void Table::restoreRecordAsDefault()
4953
memcpy( record[0], s->default_values, (size_t) s->reclength );
4960
void Table::emptyRecord()
4963
restoreRecordAsDefault();
4964
memset( null_flags, 255, s->null_bytes );
4913
4968
/*****************************************************************************
4914
4969
The different ways to read a record