InnoDB Plugin  1.0
Data Fields
dict_foreign_t Struct Reference

#include <dict0mem.h>

Collaboration diagram for dict_foreign_t:
Collaboration graph
[legend]

Data Fields

mem_heap_theap
char * id
unsigned n_fields:10
unsigned type:6
char * foreign_table_name
char * foreign_table_name_lookup
dict_table_tforeign_table
const char ** foreign_col_names
char * referenced_table_name
char * referenced_table_name_lookup
dict_table_treferenced_table
const char ** referenced_col_names
dict_index_tforeign_index
dict_index_treferenced_index

Detailed Description

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

Field Documentation

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


The documentation for this struct was generated from the following file: