My Project
Public Types | Public Member Functions | Public Attributes
Foreign_key Class Reference
Inheritance diagram for Foreign_key:
Key Sql_alloc

List of all members.

Public Types

enum  fk_match_opt { FK_MATCH_UNDEF, FK_MATCH_FULL, FK_MATCH_PARTIAL, FK_MATCH_SIMPLE }
enum  fk_option {
  FK_OPTION_UNDEF, FK_OPTION_RESTRICT, FK_OPTION_CASCADE, FK_OPTION_SET_NULL,
  FK_OPTION_NO_ACTION, FK_OPTION_DEFAULT
}

Public Member Functions

 Foreign_key (const LEX_STRING &name_arg, List< Key_part_spec > &cols, const LEX_STRING &ref_db_arg, const LEX_STRING &ref_table_arg, List< Key_part_spec > &ref_cols, uint delete_opt_arg, uint update_opt_arg, uint match_opt_arg)
 Foreign_key (const Foreign_key &rhs, MEM_ROOT *mem_root)
virtual Keyclone (MEM_ROOT *mem_root) const

Public Attributes

LEX_STRING ref_db
LEX_STRING ref_table
List< Key_part_specref_columns
uint delete_opt
uint update_opt
uint match_opt

Constructor & Destructor Documentation

Foreign_key::Foreign_key ( const Foreign_key rhs,
MEM_ROOT *  mem_root 
)

Construct an (almost) deep copy of this foreign key. Only those elements that are known to never change are not copied. If out of memory, a partial copy is returned and an error is set in THD.


Member Function Documentation

virtual Key* Foreign_key::clone ( MEM_ROOT *  mem_root) const [inline, virtual]

Used to make a clone of this object for ALTER/CREATE TABLE

See also:
comment for Key_part_spec::clone

Reimplemented from Key.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines