From 84b4baef93d125d3afcf49bec96849f2eeca23ec Mon Sep 17 00:00:00 2001 From: Eugene Kosov Date: Mon, 22 May 2017 23:40:48 +0300 Subject: [PATCH] SQL: SHOW CREATE for GENERATED ALWAYS AS ROW Test is main.mysqldump --- mysql-test/suite/versioning/r/ddl.result | 2 +- sql/sql_show.cc | 17 +++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/mysql-test/suite/versioning/r/ddl.result b/mysql-test/suite/versioning/r/ddl.result index 415d6c54feb..16e830f21cc 100644 --- a/mysql-test/suite/versioning/r/ddl.result +++ b/mysql-test/suite/versioning/r/ddl.result @@ -167,7 +167,7 @@ show create table mysql.vtmd_template; Table Create Table vtmd_template CREATE TABLE `vtmd_template` ( `start` bigint(20) unsigned GENERATED ALWAYS AS ROW START COMMENT 'TRX_ID of table lifetime start', - `end` bigint(20) unsigned NOT NULL GENERATED ALWAYS AS ROW END COMMENT 'TRX_ID of table lifetime end', + `end` bigint(20) unsigned GENERATED ALWAYS AS ROW END NOT NULL COMMENT 'TRX_ID of table lifetime end', `name` varchar(64) COLLATE utf8_bin NOT NULL COMMENT 'Table name during period [start, end)', `frm_image` blob NOT NULL COMMENT 'Table structure during period [start, end)', `col_renames` blob DEFAULT NULL COMMENT 'Column name mapping from previous lifetime', diff --git a/sql/sql_show.cc b/sql/sql_show.cc index a3ce1fd19c6..f6e046a8d34 100644 --- a/sql/sql_show.cc +++ b/sql/sql_show.cc @@ -2112,6 +2112,15 @@ int show_create_table(THD *thd, TABLE_LIST *table_list, String *packet, } else { + if (field->flags & VERS_SYS_START_FLAG) + { + packet->append(STRING_WITH_LEN(" GENERATED ALWAYS AS ROW START")); + } + else if (field->flags & VERS_SYS_END_FLAG) + { + packet->append(STRING_WITH_LEN(" GENERATED ALWAYS AS ROW END")); + } + if (flags & NOT_NULL_FLAG) packet->append(STRING_WITH_LEN(" NOT NULL")); else if (field->type() == MYSQL_TYPE_TIMESTAMP && !field->vers_sys_field()) @@ -2129,14 +2138,6 @@ int show_create_table(THD *thd, TABLE_LIST *table_list, String *packet, packet->append(STRING_WITH_LEN(" DEFAULT ")); packet->append(def_value.ptr(), def_value.length(), system_charset_info); } - else if (field->flags & VERS_SYS_START_FLAG) - { - packet->append(STRING_WITH_LEN(" GENERATED ALWAYS AS ROW START")); - } - else if (field->flags & VERS_SYS_END_FLAG) - { - packet->append(STRING_WITH_LEN(" GENERATED ALWAYS AS ROW END")); - } if (field->flags & VERS_OPTIMIZED_UPDATE_FLAG) {