Drizzled Public API Documentation

handler0alter.cc File Reference
#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)

Detailed Description

Smart ALTER TABLE

Definition in file handler0alter.cc.


Function Documentation

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().

Parameters:
colin: InnoDB column
datain: InnoDB column data
lenin: length of data, in bytes
fieldin/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().

Parameters:
tablein/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().

Parameters:
tablein/out: MySQL table
recin: record
indexin: index
offsetsin: 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.