Как я могу игнорировать идентификатор столбца при импорте в MySQL через phpMyAdmin? - PullRequest
5 голосов
/ 30 сентября 2010

Мне нужно экспортировать данные из таблицы в базе данных A, а затем импортировать их в таблицу с идентичной структурой в базе данных B. Это необходимо сделать с помощью phpMyAdmin.Вот в чем проблема: независимо от того, какой формат я выберу для экспорта (CSV или SQL), экспортируются ВСЕ столбцы (включая поле идентификатора с автоинкрементом).Поскольку в базе данных B уже есть данные в таблице B, я не могу импортировать поле идентификатора с новыми записями - оно мне нужно, чтобы импортировать записи и назначать новые автоматически увеличиваемые значения для записей.Какие настройки мне нужно использовать при экспорте (чтобы выбрать столбцы для экспорта) или при импорте (чтобы он игнорировал столбец идентификатора в файле)?

Или я должен просто экспортировать как CSV, затем открыть в Excel и удалить столбец ID?Есть ли способ сообщить phpMyAdmin, что он должен генерировать новые автоматически увеличивающиеся идентификаторы для импортируемых записей, не сообщая мне, что в файле импорта есть неправильное количество столбцов?

РЕДАКТИРОВАТЬ: чтобы уточнить, я 'm экспортирует только данные, а не структуру.

Ответы [ 2 ]

7 голосов
/ 30 сентября 2010

Excel - это опция для удаления столбца, и, вероятно, самая быстрая на данный момент.

Но если эти базы данных находятся на одном сервере и у вас есть доступ, вы можете просто INSERT INTO databaseB.table (column_list) SELECT column_list FROM databaseA.table.

Вы также можете запустить оператор SELECT, чтобы просто получить нужные столбцы и затем экспортировать результаты.Эта ссылка должна быть доступна в последних версиях PHPMyAdmin.

4 голосов
/ 11 сентября 2017

Прошло несколько лет с момента первоначального вопроса, но он все же вышел на первое место в поиске в Google, поэтому я прокомментирую, что сработало для меня:

Если я удаляю столбец Id в моем CSV и затем пытаюсь импортировать, я получаю «Недопустимое количество столбцов в CSV-вводе в строке 1.» ошибка.

Но если я сохраняю столбец Id, но изменяю все значения Id на NULL в Excel (просто набираю NULL в ячейку), то при импорте этого значения автоинкремент id заполняет новые записи последовательными числами (предположительно). начиная с самой высокой существующей записи Id +1).

Я использую PHPMyAdmin 4.7.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...