#include <sql_select.h>
Inheritance diagram for store_key:


Public Types | |
| STORE_KEY_OK | |
| STORE_KEY_FATAL | |
| STORE_KEY_CONV | |
| enum | store_key_result { STORE_KEY_OK, STORE_KEY_FATAL, STORE_KEY_CONV } |
Public Member Functions | |
| store_key (THD *thd, Field *field_arg, char *ptr, char *null, uint length) | |
| virtual | ~store_key () |
| virtual enum store_key_result | copy ()=0 |
| virtual const char * | name () const =0 |
Protected Attributes | |
| Field * | to_field |
| char * | null_ptr |
| char | err |
Definition at line 462 of file sql_select.h.
Definition at line 469 of file sql_select.h.
00469 { STORE_KEY_OK, STORE_KEY_FATAL, STORE_KEY_CONV };
| store_key::store_key | ( | THD * | thd, | |
| Field * | field_arg, | |||
| char * | ptr, | |||
| char * | null, | |||
| uint | length | |||
| ) | [inline] |
Definition at line 470 of file sql_select.h.
References Field::charset(), Field::field_name, FIELD_TYPE_BLOB, Field::init(), Field::new_key_field(), Field::NONE, st_table::s, Field::table, to_field, and Field::type().
00471 :null_ptr(null),err(0) 00472 { 00473 if (field_arg->type() == FIELD_TYPE_BLOB) 00474 { 00475 /* Key segments are always packed with a 2 byte length prefix */ 00476 to_field= new Field_varstring(ptr, length, 2, (uchar*) null, 1, 00477 Field::NONE, field_arg->field_name, 00478 field_arg->table->s, field_arg->charset()); 00479 to_field->init(field_arg->table); 00480 } 00481 else 00482 to_field=field_arg->new_key_field(thd->mem_root, field_arg->table, 00483 ptr, (uchar*) null, 1); 00484 }
Here is the call graph for this function:

| virtual store_key::~store_key | ( | ) | [inline, virtual] |
| virtual enum store_key_result store_key::copy | ( | ) | [pure virtual] |
Implemented in store_key_field, store_key_item, and store_key_const_item.
| virtual const char* store_key::name | ( | ) | const [pure virtual] |
Implemented in store_key_field, store_key_item, and store_key_const_item.
char store_key::err [protected] |
Definition at line 467 of file sql_select.h.
Referenced by store_key_const_item::copy(), store_key_item::copy(), and store_key_field::copy().
char* store_key::null_ptr [protected] |
Definition at line 466 of file sql_select.h.
Field* store_key::to_field [protected] |
Definition at line 465 of file sql_select.h.
Referenced by store_key_const_item::copy(), store_key_item::copy(), store_key(), and store_key_field::store_key_field().
1.4.7

