52
52
Table_ident *ref_table;
53
53
List<Key_part_spec> ref_columns;
54
54
uint32_t delete_opt, update_opt, match_opt;
55
Foreign_key(const LEX_STRING &name_arg
56
, List<Key_part_spec> &cols
58
, List<Key_part_spec> &ref_cols
59
, uint32_t delete_opt_arg
60
, uint32_t update_opt_arg
61
, uint32_t match_opt_arg)
64
, &default_key_create_info
68
, ref_columns(ref_cols)
69
, delete_opt(delete_opt_arg)
70
, update_opt(update_opt_arg)
71
, match_opt(match_opt_arg)
55
Foreign_key(const LEX_STRING &name_arg,
56
List<Key_part_spec> &cols,
58
List<Key_part_spec> &ref_cols,
59
uint32_t delete_opt_arg,
60
uint32_t update_opt_arg,
61
uint32_t match_opt_arg) :
62
Key(FOREIGN_KEY, name_arg, &default_key_create_info, 0, cols), ref_table(table),
63
ref_columns(ref_cols),
64
delete_opt(delete_opt_arg),
65
update_opt(update_opt_arg),
66
match_opt(match_opt_arg)
74
71
* Constructs an (almost) deep copy of this foreign key. Only those
75
72
* elements that are known to never change are not copied.