Как получить запрос, который воссоздает таблицу sql в PHPMyAdmin - PullRequest
19 голосов
/ 08 августа 2011

У меня есть таблица на сервере MySQL, и я хотел бы получить SQL, который воссоздает таблицу.

Как получить запрос на воссоздание таблицы SQL?

Ответы [ 6 ]

58 голосов
/ 08 августа 2011

MySQL поддерживает SHOW CREATE TABLE для возврата SQL, который использовался для создания таблицы.

Из их документов:

mysql> SHOW CREATE TABLE t;
CREATE TABLE t (
  id INT(11) default NULL auto_increment,
  s char(60) default NULL,
  PRIMARY KEY (id)
) ENGINE=MyISAM

Это может быть полезно, еслиу вас есть только соединение с БД, в отличие от CLI на сервере.Если у вас есть CLI, используйте mysqldump, как рекомендует liamgriffiths.

13 голосов
/ 08 августа 2011

mysqldump может это сделать - http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

Вы можете использовать это так:

mysqldump [databasename] [tablename] > mysqltablesql.sql
7 голосов
/ 08 августа 2011

Если вы используете phpMyAdmin, выберите таблицу и перейдите на вкладку «Экспорт». Одним из типов вывода является SQL. Выбор этого параметра приведет к созданию сценария SQL для создания таблицы и вставки всех данных, которые в данный момент находятся в таблице. Убедитесь, что в разделе «Данные дампа» выбрано «Структура и данные»

2 голосов
/ 09 августа 2011

mysqldump [ОПЦИИ] база данных [таблицы]> backup-file.sql

Если вы не предоставите никаких таблиц или не используете --databases или --all-database, будут сброшены все базы данных.

Вы можете получить список параметров, поддерживаемых вашей версией mysqldump, выполнив mysqldump --help.

Обратите внимание, что если вы запустите mysqldump без --quick или --opt, mysqldump загрузит весь набор результатов в память перед тем, как вывести результат. Это, вероятно, будет проблемой, если вы создаете дамп большой базы данных.

0 голосов
/ 08 августа 2011

Я бы пошел с предложением @liamgriffiths mysqldump, но вы также можете попробовать create table <new-table-name> like <old-table-name> с последующим insert into <new-table-name> select * from <old-table-name>

0 голосов
/ 08 августа 2011

Если у вас есть доступ к phpMyAdmin, вы можете получить этот код на вкладке «Экспорт» в нужной вам таблице.

Выберите SQL, затем убедитесь, что вы экспортируете «Структура» (код «CREATE table») и «Данные» (код «INSERT») с типом экспорта, установленным в «INSERT».

...