MySQL Migrating к таблице с другой структурой

Согласно RFC 4288 "Спецификации типа среды и Регистрационные Процедуры", тип (например, "приложение") и подтип (например, "vnd...") оба может быть макс. 127 символов . Вы делаете математику:)

Редактирование: Между тем, тот документ был obsoleted RFC 6838 , который не изменяет максимальный размер, но добавляет комментарий:

Также примечание, что, в то время как этот синтаксис позволяет названия до 127 символов, допустимые ограничения реализации могут сделать такие длинные имена проблематичными. Поэтому и ДОЛЖЕН быть ограничен 64 символами.

6
задан OMG Ponies 10 September 2009 в 05:27
поделиться

3 ответа

Обновите следующее для соответствия:

SELECT 'INSERT INTO NEW_TABLE ... ('+ to.column +');'
  FROM OLD_TABLE ot

Вам нужен оператор INSERT для таблицы в новой базе данных со списком столбцов. Затем заполните часть значений соответственно на основе значений в старой таблице. Запустите в старой среде, и вы получите свои вставки с данными для новой среды - просто скопируйте и вставьте в скрипт.

Помните, что типы данных должны обрабатываться соответственно - даты (включая время), и строки придется обрабатывать, потому что вы имеете дело с текстом.

3
ответ дан 16 December 2019 в 21:43
поделиться

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

insert into newTable select row1,row2 from tempTable
2
ответ дан 16 December 2019 в 21:43
поделиться

Если вы используете MySQL 5.1, мощное, хотя, возможно, в данном случае излишнее решение, решение состоит в том, чтобы выполнить xml mysqldump и использовать XSLT для его преобразования. К сожалению, повторный импорт этого XML-файла не поддерживается в версии 5.0, вам потребуется 5.1, 5.4 или 6.0

0
ответ дан 16 December 2019 в 21:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: