13.7.5.10 Вывод SQL-кода для создания таблицы
SHOW CREATE TABLE tbl_name
Показывает CREATE TABLE - запрос для создания именованной таблицы. Для использования этого запроса необходимо обладать соответствующим правом на таблицу. Этот запрос также работает с представлениями.
mysql> SHOW CREATE TABLE t\G
*************************** 1. row ***************************
Table: t
Create Table: CREATE TABLE `t` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`s` char(60) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 SHOW CREATE TABLE приводит имена таблиц и столбцов в соответствии со значением параметра sql_quote_show_create. Смотрите Раздел 5.1.7, «Системные переменные сервера».
При изменении движка хранения таблицы, параметры таблицы, которые не применимы к новому движку хранения, сохраняются в определении таблицы, чтобы позволить возвращение таблицы с ее ранее определенными параметрами к исходному движку хранения, если необходимо. Например, при смене движка хранения с InnoDB на MyISAM, специфичные для InnoDB параметры, такие как ROW_FORMAT=COMPACT, сохраняются.
mysql> CREATE TABLE t1 (c1 INT PRIMARY KEY) ROW_FORMAT=COMPACT ENGINE=InnoDB;
mysql> ALTER TABLE t1 ENGINE=MyISAM;
mysql> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE `t1` (
`c1` int(11) NOT NULL,
PRIMARY KEY (`c1`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT
При создании таблицы с отключенным параметром, используется по умолчанию форма записи движка хранения, если заданная форма записи не поддерживается. Фактическая форма записи таблицы сообщается в столбце Row_format в ответ на запрос SHOW TABLE
STATUS. SHOW CREATE
TABLE показывает формат записи, который был задан в CREATE TABLE - запросе.
© 2025 Oracle
Licensed under the GPLv2 License.