InnoDB Plugin
1.0
|
#include <dict0mem.h>
Data Fields | |
mem_heap_t * | heap |
char * | id |
unsigned | n_fields:10 |
unsigned | type:6 |
char * | foreign_table_name |
char * | foreign_table_name_lookup |
dict_table_t * | foreign_table |
const char ** | foreign_col_names |
char * | referenced_table_name |
char * | referenced_table_name_lookup |
dict_table_t * | referenced_table |
const char ** | referenced_col_names |
dict_index_t * | foreign_index |
dict_index_t * | referenced_index |
Data structure for a foreign key constraint; an example:
FOREIGN KEY (A, B) REFERENCES TABLE2 (C, D). Most fields will be initialized to 0, NULL or FALSE in dict_mem_foreign_create().
const char** dict_foreign_t::foreign_col_names |
names of the columns in the foreign key
dict_index_t* dict_foreign_t::foreign_index |
foreign index; we require that both tables contain explicitly defined indexes for the constraint: InnoDB does not generate new indexes implicitly
dict_table_t* dict_foreign_t::foreign_table |
table where the foreign key is
char* dict_foreign_t::foreign_table_name |
foreign table name
char* dict_foreign_t::foreign_table_name_lookup |
foreign table name used for dict lookup
mem_heap_t* dict_foreign_t::heap |
this object is allocated from this memory heap
char* dict_foreign_t::id |
id of the constraint as a null-terminated string
unsigned dict_foreign_t::n_fields |
number of indexes' first fields for which the foreign key constraint is defined: we allow the indexes to contain more fields than mentioned in the constraint, as long as the first fields are as mentioned
const char** dict_foreign_t::referenced_col_names |
names of the referenced columns in the referenced table
dict_index_t* dict_foreign_t::referenced_index |
referenced index
dict_table_t* dict_foreign_t::referenced_table |
table where the referenced key is
char* dict_foreign_t::referenced_table_name |
referenced table name
char* dict_foreign_t::referenced_table_name_lookup |
referenced table name for dict lookup
unsigned dict_foreign_t::type |
0 or DICT_FOREIGN_ON_DELETE_CASCADE or DICT_FOREIGN_ON_DELETE_SET_NULL