MySQL сваливает скрипт .sql и импортирует его в дерби apache

Таким образом, предположительно mysqldump может экспортировать в ANSI-совместимый формат, чтобы вы могли импортировать в базы данных других поставщиков.

Однако, пытаясь импортировать в дерби apache, я сталкиваюсь со всеми этими синтаксическими ошибками. Думал, что попробую какое-нибудь регулярное выражение и все исправлю, но кажется, что их больше, чем пара.

Есть ли что-то, что мне не хватает в mysqldump? Пробовал ddlutils, но не смог добиться прогресса после шага 3 с этими документы, которые кажутся устаревшими.

Есть ли у меня другие варианты с этим?


person qnoid    schedule 20.09.2010    source источник


Ответы (2)


Параметр mysqldump --compatible=ansi не создает сценарий SQL, который полностью совместим с ANSI, он просто пытается создать результат, который больше совместим с ANSI: «Производить выходные данные, более совместим с другими системами баз данных или со старыми серверами MySQL».

К сожалению, синтаксис SQL, поддерживаемый каждой базой данных, немного отличается. SQL является относительно слабым стандартом, намного слабее, чем Javascript или даже C. Некоторые базы данных поддерживают функции совместимости, такие как MySQL, или даже режимы совместимости (отказ от ответственности: я основной автор H2), но иногда даже этого недостаточно.

У вас есть несколько вариантов: вы можете вручную изменить сгенерированный SQL-скрипт или использовать другой инструмент для копирования структуры/данных таблицы. Одним из таких инструментов является плагин SQuirreL DB Copy (на самом деле я никогда им не пользовался, но, насколько я слышал, работает хорошо).

person Thomas Mueller    schedule 21.09.2010
comment
хотя это, кажется, не решает проблему без каких-либо причуд, это шаг в правильном направлении. - person qnoid; 29.09.2010

Если вы можете экспортировать свои данные в формате CSV или подобном, вы можете использовать процедуры импорта данных Derby для импорта ваших данных: http://db.apache.org/derby/docs/10.7/ref/rrefimportproc.html

person Bryan Pendleton    schedule 06.04.2011