Как скопировать таблицу между двумя моделями в Workbench Mysql?

Я делаю что-то вроде databese, мне нужно скопировать одну таблицу из одной модели в другую, но я стараюсь, чтобы многие способы там не влияли. Есть ли способ сделать это?

Ответы

Ответ 1

Наилучшим вариантом, вероятно, является создание урезанной версии модели, содержащей объекты, которые вы хотите перенести. Затем откройте целевую модель и запустите File → Include Model... Выберите урезанную исходную модель и все.

Ответ 2

Если вы просто хотите сделать одну таблицу через Workbench MySQL.

В MySQL Workbench:

  • Подключение к серверу MySQL
  • Развернуть базу данных
  • Щелкните правой кнопкой мыши по таблице.
  • Выберите "Копировать в буфер обмена"
  • Выберите Создать выражение

Оператор create для таблицы будет скопирован в буфер обмена, подобный приведенному ниже:

   CREATE TABLE `cache` (
  `cid` varchar(255) NOT NULL DEFAULT '',
  `data` longblob,
  `expire` int(11) NOT NULL DEFAULT '0',
  `created` int(11) NOT NULL DEFAULT '0',
  `headers` text,
  `serialized` smallint(6) NOT NULL DEFAULT '0',
  PRIMARY KEY (`cid`),
  KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Создайте таблицу в новой базе данных

  • Откройте новую вкладку SQL для выполнения запросов (File- > New Query Tab)
  • Измените код таблицы create, чтобы включить базу данных для создания таблицы.

     CREATE TABLE `databaseName`.`cache` (
      `cid` varchar(255) NOT NULL DEFAULT '',
      `data` longblob,
      `expire` int(11) NOT NULL DEFAULT '0',
      `created` int(11) NOT NULL DEFAULT '0',
      `headers` text,
      `serialized` smallint(6) NOT NULL DEFAULT '0',
      PRIMARY KEY (`cid`),
      KEY `expire` (`expire`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  • Затем нажмите кнопку "Выполнить" (выглядит как молния)

Это скопирует схему таблицы из одной базы данных в другую с помощью инструментария MySQL. Просто обновите таблицы в базе данных, и вы увидите новую добавленную таблицу

Ответ 3

  • Выберите вкладку с исходной базой данных
  • В меню: Сервер- > Экспорт данных
  • Выберите схему и таблицу как объект схемы
  • Выберите опцию Export to Self-Contained File и установите флажок "Создать дамп в одной транзакции" (только в автономном режиме)
  • Скопировать полный путь к файлу в буфер обмена
  • Запустить экспорт
  • Выбрать вкладку с целевой базой данных
  • В меню: Сервер- > Импорт данных. Убедитесь, что имя целевой базы данных находится в верхнем левом углу представления Импорт данных.
  • Выберите "Импорт из автономного файла" и вставьте полный путь к файлу из буфера обмена
  • Выберите целевую схему по умолчанию
  • Выберите содержимое дампа (структура дампа и данные и т.д.)
  • Начать импорт

Ответ 4

Я думаю, что стоит упомянуть, что

  • скопированная таблица может ссылаться на поля в таблицах исходной схемы, которых не существует, в схеме, где она должна быть скопирована. Возможно, неплохо было бы проверить таблицу для этих расхождений, прежде чем добавлять ее в другую схему.
  • Вероятно, это хорошая идея - проверить совместимость двигателя (например, InnoDB vs MyISAM) и набор символов.

Ответ 5

создать таблицу .m_property_nature как .m_property_nature;

INSERT INTO.m_property_nature SELECT * from.m_property_nature;

Ответ 6

Вы можете получить запрос к таблице ящиков из информации таблицы и использовать один и тот же запрос для другого экземпляра базы данных.

  1. показать создать таблицу TABLENAME.content и скопировать запрос;
  2. Запустите сгенерированный запрос на другом подключенном экземпляре Db.

Ответ 7

Вы можете просто использовать оператор выбора. Здесь я создаю дубликат таблицы "original_table" из схемы/базы данных "original_schema" в схему "new_schema":

CREATE TABLE new_schema.duplicate_table AS
Select * from original_schema.original_table;

Вы можете просто поместить любой оператор выбора, который вам нужен, добавить условие и выбрать столбцы:

CREATE TABLE new_schema.duplicate_table AS
SELECT column1, column2       
FROM original_schema.original_table
WHERE column2 < 11000000;

Ответ 8

Если вы уже создали свою таблицу и просто хотите скопировать данные, я бы рекомендовал использовать "Мастер экспорта данных" и "Мастер импорта данных". Он в основном выбирает вещи в программе для экспорта, а затем импорта данных и прост в использовании.

У MySQL есть статья о мастерах здесь: Мастер экспорта и импорта табличных данных

Чтобы скопировать данные с помощью мастеров, выполните следующие действия:

  1. Найдите в списке таблицу, из которой вы хотите скопировать данные.
  2. Щелкните правой кнопкой мыши и выберите "Мастер экспорта табличных данных".
  3. Выберите столбцы, которые вы хотите скопировать.
  4. Выберите место для сохранения файла *.csv или *.json с скопированными данными.

  5. Найдите таблицу для вставки скопированных данных.

  6. Щелкните правой кнопкой мыши и выберите "Мастер импорта данных таблицы".
  7. Выберите файл, который вы только что экспортировали.
  8. Сопоставьте столбцы из таблицы, из которой вы скопировали, с таблицей, в которую вы вставили.
  9. Нажмите "Готово". Данные вставляются по вашему выбору.