#include <config.h>
#include <drizzled/error.h>
#include <drizzled/charset_info.h>
#include <drizzled/field.h>
#include <drizzled/table.h>
#include <drizzled/field/varstring.h>
#include <drizzled/internal/my_sys.h>
#include "log0log.h"
#include "row0merge.h"
#include "srv0srv.h"
#include "trx0trx.h"
#include "trx0roll.h"
#include "ha_prototypes.h"
#include "handler0alter.h"
#include "ha_innodb.h"
#include "handler0vars.h"
Go to the source code of this file.
Functions | |
static void | innobase_col_to_mysql (const dict_col_t *col, const unsigned char *data, ulint len, Field *field) |
UNIV_INTERN void | innobase_rec_to_mysql (Table *table, const rec_t *rec, const dict_index_t *index, const ulint *offsets) |
UNIV_INTERN void | innobase_rec_reset (Table *table) |
Smart ALTER TABLE
Definition in file handler0alter.cc.
static void innobase_col_to_mysql | ( | const dict_col_t * | col, |
const unsigned char * | data, | ||
ulint | len, | ||
Field * | field | ||
) | [static] |
Copies an InnoDB column to a MySQL field. This function is adapted from row_sel_field_store_in_mysql_format().
col | in: InnoDB column |
data | in: InnoDB column data |
len | in: length of data, in bytes |
field | in/out: MySQL field |
Definition at line 48 of file handler0alter.cc.
References dict_col_struct::mbminmaxlen, dict_col_struct::mtype, drizzled::Field::pack_length(), drizzled::Field::ptr, row_mysql_store_blob_ref(), row_mysql_store_true_var_len(), and ut_ad.
Referenced by innobase_rec_to_mysql().
UNIV_INTERN void innobase_rec_reset | ( | Table * | table | ) |
Resets table->getInsertRecord().
table | in/out: MySQL table |
Definition at line 185 of file handler0alter.cc.
UNIV_INTERN void innobase_rec_to_mysql | ( | Table * | table, |
const rec_t * | rec, | ||
const dict_index_t * | index, | ||
const ulint * | offsets | ||
) |
Copies an InnoDB record to table->getInsertRecord().
table | in/out: MySQL table |
rec | in: record |
index | in: index |
offsets | in: rec_get_offsets( rec, index, ...) |
Definition at line 135 of file handler0alter.cc.
References dict_field_get_col(), dict_table_get_n_user_cols(), innobase_col_to_mysql(), dict_index_struct::table, and ut_ad.