Как получить запрос, который воссоздает таблицу sql в PHPMyAdmin

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

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


person Borut Flis    schedule 08.08.2011    source источник
comment
Из командной строки: mysqldump -u yourlogin -p your_database your_tablename. Введите пароль, после чего будет показан оператор создания таблицы. Если вы хотите получить его из графического интерфейса phpmyadmin, выполните запрос: show create table your_tablename   -  person Eric Leschinski    schedule 22.11.2013
comment
Возможный дубликат Как сделать резервную копию одну таблицу в базе данных MySQL?   -  person Brian Tompsett - 汤莱恩    schedule 27.05.2018


Ответы (6)


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

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

mysqldump [databasename] [tablename] > mysqltablesql.sql
person liamgriffiths    schedule 08.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, используйте mysqldump, как рекомендует liamgriffiths.

person J.J.    schedule 08.08.2011
comment
Это не касается копирования строк, которое, как мне кажется, было частью ожидаемого результата. - person wtf8_decode; 06.09.2015

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

person Casey    schedule 08.08.2011
comment
Спасибо, это лучший ответ для меня. Файл sql - это просто список инструкций по созданию базы данных, справа вверху находится запрос структуры таблицы. - person Purple Tentacle; 21.03.2018

mysqldump [ОПЦИИ] база данных [таблицы]> файл-резервной копии.sql

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

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

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

person Ashwin A    schedule 09.08.2011

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

Выберите SQL, затем убедитесь, что вы экспортируете «Структуру» (код «СОЗДАТЬ таблицу») и «Данные» (код «ВСТАВИТЬ») с типом экспорта, установленным на «ВСТАВИТЬ».

person abarrington    schedule 08.08.2011

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

person sa125    schedule 08.08.2011