Согласно RFC 4288 "Спецификации типа среды и Регистрационные Процедуры", тип (например, "приложение") и подтип (например, "vnd...") оба может быть макс. 127 символов . Вы делаете математику:)
Редактирование: Между тем, тот документ был obsoleted RFC 6838 , который не изменяет максимальный размер, но добавляет комментарий:
Также примечание, что, в то время как этот синтаксис позволяет названия до 127 символов, допустимые ограничения реализации могут сделать такие длинные имена проблематичными. Поэтому
и
ДОЛЖЕН быть ограничен 64 символами.
Обновите следующее для соответствия:
SELECT 'INSERT INTO NEW_TABLE ... ('+ to.column +');'
FROM OLD_TABLE ot
Вам нужен оператор INSERT для таблицы в новой базе данных со списком столбцов. Затем заполните часть значений соответственно на основе значений в старой таблице. Запустите в старой среде, и вы получите свои вставки с данными для новой среды - просто скопируйте и вставьте в скрипт.
Помните, что типы данных должны обрабатываться соответственно - даты (включая время), и строки придется обрабатывать, потому что вы имеете дело с текстом.
Прежде всего, создайте новую базу данных со старой структурой или временные таблицы в текущей базе данных. Затем запустите скрипт с операторами вставки для каждой строки, но в значениях должны быть только те поля, которые находятся в новой структуре.
insert into newTable select row1,row2 from tempTable
Если вы используете MySQL 5.1, мощное, хотя, возможно, в данном случае излишнее решение, решение состоит в том, чтобы выполнить xml mysqldump и использовать XSLT для его преобразования. К сожалению, повторный импорт этого XML-файла не поддерживается в версии 5.0, вам потребуется 5.1, 5.4 или 6.0