MySQL 5.6.14 Source Code Document
|
Public Member Functions | |
Field_bit (uchar *ptr_arg, uint32 len_arg, uchar *null_ptr_arg, uchar null_bit_arg, uchar *bit_ptr_arg, uchar bit_ofs_arg, enum utype unireg_check_arg, const char *field_name_arg) | |
enum_field_types | type () const |
enum ha_base_keytype | key_type () const |
uint32 | key_length () const |
uint32 | max_data_length () const |
uint32 | max_display_length () |
Item_result | result_type () const |
type_conversion_status | reset (void) |
type_conversion_status | store (const char *to, uint length, const CHARSET_INFO *charset) |
type_conversion_status | store (double nr) |
type_conversion_status | store (longlong nr, bool unsigned_val) |
type_conversion_status | store_decimal (const my_decimal *) |
double | val_real (void) |
longlong | val_int (void) |
String * | val_str (String *, String *) |
virtual bool | str_needs_quotes () |
my_decimal * | val_decimal (my_decimal *) |
int | cmp (const uchar *a, const uchar *b) |
int | cmp_binary_offset (uint row_offset) |
int | cmp_max (const uchar *a, const uchar *b, uint max_length) |
int | key_cmp (const uchar *a, const uchar *b) |
int | key_cmp (const uchar *str, uint length) |
int | cmp_offset (uint row_offset) |
void | get_image (uchar *buff, uint length, const CHARSET_INFO *cs) |
void | set_image (const uchar *buff, uint length, const CHARSET_INFO *cs) |
uint | get_key_image (uchar *buff, uint length, imagetype type) |
void | set_key_image (const uchar *buff, uint length) |
void | make_sort_key (uchar *buff, uint length) |
uint32 | pack_length () const |
uint32 | pack_length_in_rec () const |
uint | pack_length_from_metadata (uint field_metadata) |
uint | row_pack_length () const |
bool | compatible_field_size (uint metadata, Relay_log_info *rli, uint16 mflags, int *order_var) |
void | sql_type (String &str) const |
virtual uchar * | pack (uchar *to, const uchar *from, uint max_length, bool low_byte_first) |
virtual const uchar * | unpack (uchar *to, const uchar *from, uint param_data, bool low_byte_first) |
virtual void | set_default () |
Field * | new_key_field (MEM_ROOT *root, TABLE *new_table, uchar *new_ptr, uchar *new_null_ptr, uint new_null_bit) |
void | set_bit_ptr (uchar *bit_ptr_arg, uchar bit_ofs_arg) |
bool | eq (Field *field) |
uint | is_equal (Create_field *new_field) |
void | move_field_offset (my_ptrdiff_t ptr_diff) |
void | hash (ulong *nr, ulong *nr2) |
Field_bit * | clone (MEM_ROOT *mem_root) const |
Field_bit * | clone () const |
Public Member Functions inherited from Field | |
bool | has_insert_default_function () const |
bool | has_update_default_function () const |
Field (uchar *ptr_arg, uint32 length_arg, uchar *null_ptr_arg, uchar null_bit_arg, utype unireg_check_arg, const char *field_name_arg) | |
This is used as a table name when the table structure is not set up. | |
virtual type_conversion_status | store_packed (longlong nr) |
virtual type_conversion_status | store_time (MYSQL_TIME *ltime, uint8 dec) |
type_conversion_status | store_time (MYSQL_TIME *ltime) |
type_conversion_status | store (const char *to, uint length, const CHARSET_INFO *cs, enum_check_fields check_level) |
virtual longlong | val_time_temporal () |
virtual longlong | val_date_temporal () |
longlong | val_temporal_by_field_type () |
String * | val_str (String *str) |
String * | val_int_as_str (String *val_buffer, my_bool unsigned_flag) |
virtual Item_result | numeric_context_result_type () const |
virtual Item_result | cmp_type () const |
virtual Item_result | cast_to_int_type () const |
virtual bool | eq_def (Field *field) |
virtual int | save_field_metadata (uchar *first_byte) |
virtual uint32 | data_length () |
virtual uint32 | sort_length () const |
virtual void | reset_fields () |
virtual bool | get_timestamp (struct timeval *tm, int *warnings) |
virtual void | store_timestamp (const timeval *tm) |
void | store_timestamp (my_time_t sec) |
void | evaluate_insert_default_function () |
void | evaluate_update_default_function () |
virtual bool | binary () const |
virtual bool | zero_pack () const |
virtual enum_field_types | real_type () const |
virtual enum_field_types | binlog_type () const |
int | cmp (const uchar *str) |
virtual int | cmp_binary (const uchar *a, const uchar *b, uint32 max_length=~0L) |
virtual uint | decimals () const |
bool | is_temporal () const |
bool | is_temporal_with_date () const |
bool | is_temporal_with_time () const |
bool | is_temporal_with_date_and_time () const |
bool | is_null (my_ptrdiff_t row_offset=0) const |
bool | is_real_null (my_ptrdiff_t row_offset=0) const |
bool | is_null_in_record (const uchar *record) const |
void | set_null (my_ptrdiff_t row_offset=0) |
void | set_notnull (my_ptrdiff_t row_offset=0) |
bool | maybe_null (void) const |
bool | real_maybe_null (void) const |
uint | null_offset (const uchar *record) const |
uint | null_offset () const |
void | set_null_ptr (uchar *p_null_ptr, uint p_null_bit) |
size_t | last_null_byte () const |
virtual void | make_field (Send_field *) |
virtual bool | optimize_range (uint idx, uint part) |
virtual bool | can_be_compared_as_longlong () const |
virtual void | free () |
virtual Field * | new_field (MEM_ROOT *root, TABLE *new_table, bool keep_type) |
Field * | new_key_field (MEM_ROOT *root, TABLE *new_table, uchar *new_ptr) |
void | move_field (uchar *ptr_arg, uchar *null_ptr_arg, uchar null_bit_arg) |
void | move_field (uchar *ptr_arg) |
longlong | val_int_offset (uint row_offset) |
longlong | val_int (const uchar *new_ptr) |
String * | val_str (String *str, const uchar *new_ptr) |
virtual bool | send_binary (Protocol *protocol) |
uchar * | pack (uchar *to, const uchar *from) |
const uchar * | unpack (uchar *to, const uchar *from) |
virtual uint | packed_col_length (const uchar *to, uint length) |
virtual uint | max_packed_col_length (uint max_length) |
uint | offset (uchar *record) |
void | copy_from_tmp (int offset) |
uint | fill_cache_field (struct st_cache_field *copy) |
virtual bool | get_date (MYSQL_TIME *ltime, uint fuzzydate) |
virtual bool | get_time (MYSQL_TIME *ltime) |
virtual const CHARSET_INFO * | charset (void) const |
virtual const CHARSET_INFO * | charset_for_protocol (void) const |
virtual const CHARSET_INFO * | sort_charset (void) const |
virtual bool | has_charset (void) const |
virtual bool | match_collation_to_optimize_range () const |
virtual enum Derivation | derivation (void) const |
virtual uint | repertoire (void) const |
virtual void | set_derivation (enum Derivation derivation_arg) |
bool | set_warning (Sql_condition::enum_warning_level, unsigned int code, int cuted_increment) const |
bool | check_overflow (int op_result) |
bool | check_truncated (int op_result) |
bool | warn_if_overflow (int op_result) |
void | init (TABLE *table_arg) |
longlong | convert_decimal2longlong (const my_decimal *val, bool unsigned_flag, bool *has_overflow) |
virtual uint32 | char_length () |
virtual geometry_type | get_geometry_type () |
void | dbug_print () |
ha_storage_media | field_storage_type () const |
void | set_storage_type (ha_storage_media storage_type_arg) |
column_format_type | column_format () const |
void | set_column_format (column_format_type column_format_arg) |
virtual type_conversion_status | validate_stored_val (THD *thd) |
Public Attributes | |
uchar * | bit_ptr |
uchar | bit_ofs |
uint | bit_len |
uint | bytes_in_rec |
Public Attributes inherited from Field | |
uchar * | ptr |
TABLE * | table |
TABLE * | orig_table |
const char ** | table_name |
const char * | field_name |
LEX_STRING | comment |
key_map | key_start |
key_map | part_of_key |
key_map | part_of_key_not_clustered |
key_map | part_of_sortkey |
utype | unireg_check |
uint32 | field_length |
uint32 | flags |
uint16 | field_index |
uchar | null_bit |
bool | is_created_from_null_item |
Additional Inherited Members | |
Public Types inherited from Field | |
enum | utype { NONE, DATE, SHIELD, NOEMPTY, CASEUP, PNR, BGNR, PGNR, YES, NO, REL, CHECK, EMPTY, UNKNOWN_FIELD, CASEDN, NEXT_NUMBER, INTERVAL_FIELD, BIT_FIELD, TIMESTAMP_OLD_FIELD, CAPITALIZE, BLOB_FIELD, TIMESTAMP_DN_FIELD, TIMESTAMP_UN_FIELD, TIMESTAMP_DNUN_FIELD } |
enum | geometry_type { GEOM_GEOMETRY = 0, GEOM_POINT = 1, GEOM_LINESTRING = 2, GEOM_POLYGON = 3, GEOM_MULTIPOINT = 4, GEOM_MULTILINESTRING = 5, GEOM_MULTIPOLYGON = 6, GEOM_GEOMETRYCOLLECTION = 7 } |
enum | imagetype { itRAW, itMBR } |
enum | { LAST_NULL_BYTE_UNDEF = 0 } |
Static Public Member Functions inherited from Field | |
static void * | operator new (size_t size) throw () |
static void * | operator new (size_t size, MEM_ROOT *mem_root) throw () |
static void | operator delete (void *ptr, MEM_ROOT *mem_root) |
static void | operator delete (void *ptr_arg, size_t size) throw () |
static bool | type_can_have_key_part (enum_field_types) |
static enum_field_types | field_type_merge (enum_field_types, enum_field_types) |
static Item_result | result_merge_type (enum_field_types) |
Protected Member Functions inherited from Field | |
uchar * | pack_int16 (uchar *to, const uchar *from, bool low_byte_first_to) |
const uchar * | unpack_int16 (uchar *to, const uchar *from, bool low_byte_first_from) |
uchar * | pack_int24 (uchar *to, const uchar *from, bool low_byte_first_to) |
const uchar * | unpack_int24 (uchar *to, const uchar *from, bool low_byte_first_from) |
uchar * | pack_int32 (uchar *to, const uchar *from, bool low_byte_first_to) |
const uchar * | unpack_int32 (uchar *to, const uchar *from, bool low_byte_first_from) |
uchar * | pack_int64 (uchar *to, const uchar *from, bool low_byte_first_to) |
const uchar * | unpack_int64 (uchar *to, const uchar *from, bool low_byte_first_from) |
bool | field_flags_are_binary () |
Static Protected Member Functions inherited from Field | |
static void | handle_int16 (uchar *to, const uchar *from, bool low_byte_first_from, bool low_byte_first_to) |
static void | handle_int24 (uchar *to, const uchar *from, bool low_byte_first_from, bool low_byte_first_to) |
static void | handle_int32 (uchar *to, const uchar *from, bool low_byte_first_from, bool low_byte_first_to) |
static void | handle_int64 (uchar *to, const uchar *from, bool low_byte_first_from, bool low_byte_first_to) |
Protected Attributes inherited from Field | |
uchar * | null_ptr |
Makes a shallow copy of the Field object.
mem_root | MEM_ROOT to use for memory allocation. |
NULL | If memory allocation failed. |
Implements Field.
Reimplemented in Field_bit_as_char.
|
inlinevirtual |
Makes a shallow copy of the Field object.
NULL | If memory allocation failed. |
Implements Field.
Reimplemented in Field_bit_as_char.
|
virtual |
Check to see if field size is compatible with destination.
This method is used in row-based replication to verify that the slave's field size is less than or equal to the master's field size. The encoded field metadata (from the master or source) is decoded and compared to the size of this field (the slave or destination).
field_metadata | Encoded size in field metadata |
order_var | Pointer to variable where the order between the source field and this field will be returned. |
true
Reimplemented from Field.
Definition at line 9321 of file field.cc.
|
virtual |
|
inlinevirtual |
Writes a copy of the current value in the record buffer, suitable for sorting using byte-by-byte comparison. Integers are always in big-endian regardless of hardware architecture. At most length bytes are written into the buffer.
buff | The buffer, assumed to be at least length bytes. |
length | Number of bytes to write. |
Implements Field.
|
inlinevirtual |
Get the maximum size of the data in packed format.
Reimplemented from Field.
|
virtual |
|
virtual |
Returns the number of bytes field uses in row-based replication row packed size.
This method is used in row-based replication to determine the number of bytes that the field consumes in the row record format. This is used to skip fields in the master that do not exist on the slave.
field_metadata | Encoded size in field metadata |
Reimplemented from Field.
|
virtual |
Unpack a bit field from row data.
This method is used to unpack a bit field from a master whose size of the field is less than that of the slave.
to | Destination of the data |
from | Source of the data |
param_data | Bit length (upper) and length (lower) values |
Reimplemented from Field.