CREATE TABLE Statement 2543 reference_definition : REFERENCES  tbl_name  ( key_part ,...) [MATCH FULL | MATCH PARTIAL | MATCH SIMPLE] [ON DELETE  reference_option ] [ON UPDATE  reference_option ] reference_option : RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT table_options : table_option  [[,]  table_option ] ... table_option : { AUTOEXTEND_SIZE [=]  value | AUTO_INCREMENT [=]  value | AVG_ROW_LENGTH [=]  value | [DEFAULT] CHARACTER SET [=]  charset_name | CHECKSUM [=] {0 | 1} | [DEFAULT] COLLATE [=]  collation_name | COMMENT [=] ’ string ’ | COMPRESSION [=] {’ZLIB’ | ’LZ4’ | ’NONE’} | CONNECTION [=] ’ connect_string ’ | {DATA | INDEX} DIRECTORY [=] ’ absolute path to directory ’ | DELAY_KEY_WRITE [=] {0 | 1} | ENCRYPTION [=] {’Y’ | ’N’} | ENGINE [=]  engine_name | ENGINE_ATTRIBUTE [=] ’ string ’ | INSERT_METHOD [=] { NO | FIRST | LAST } | KEY_BLOCK_SIZE [=]  value | MAX_ROWS [=]  value | MIN_ROWS [=]  value | PACK_KEYS [=] {0 | 1 | DEFAULT} | PASSWORD [=] ’ string ’ | ROW_FORMAT [=] {DEFAULT | DYNAMIC | FIXED | COMPRESSED | REDUNDANT | COMPACT} | SECONDARY_ENGINE_ATTRIBUTE [=] ’ string ’ | STATS_AUTO_RECALC [=] {DEFAULT | 0 | 1} | STATS_PERSISTENT [=] {DEFAULT | 0 | 1} | STATS_SAMPLE_PAGES [=]  value | TABLESPACE  tablespace_name  [STORAGE {DISK | MEMORY}] | UNION [=] ( tbl_name [, tbl_name ]...) } partition_options : PARTITION BY { [LINEAR] HASH( expr ) | [LINEAR] KEY [ALGORITHM={1 | 2}] ( column_list ) | RANGE{( expr ) | COLUMNS( column_list )} | LIST{( expr ) | COLUMNS( column_list )} } [PARTITIONS  num ] [SUBPARTITION BY { [LINEAR] HASH( expr ) | [LINEAR] KEY [ALGORITHM={1 | 2}] ( column_list ) } [SUBPARTITIONS  num ] ] [( partition_definition  [,  partition_definition ] ...)] partition_definition : PARTITION  partition_name [VALUES {LESS THAN {( expr  |  value_list ) | MAXVALUE} | IN ( value_list )}] [[STORAGE] ENGINE [=]  engine_name ] [COMMENT [=] ’ string ’ ] [DATA DIRECTORY [=] ’ data_dir ’] [INDEX DIRECTORY [=] ’ index_dir ’]