Spring boot schema.sql не работает с файлом mysqldump

Minjun Yu спросил: 26 ноября 2017 в 04:35 в: java

Spring boot автоматически выбирает и запускает мой файл schema.sql при каждом запуске моего интеграционного теста.

Проблема:
Это выдает ошибку

Невозможно удалить или обновить родительскую строку: ограничение внешнего ключа не выполнено.

Я могу без проблем импортировать этот файл с помощью команды mysql , поэтому я подозреваю, что Spring boot не использует команду mysql для запуска сценария.
schema.sql создается mysqldump. Ничего не изменилось.
Это работает после того, как я сделал следующий "обходной путь":
1. Избавьтесь от конкретных ключевых слов / команд MySQL, таких как /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
2. переупорядочить блоки create table так, чтобы таблицы создавались в правильном порядке, чтобы избежать ошибок ограничения внешнего ключа.

Вопрос: как сделать Spring загрузиться, чтобы импортировать мой файл schema.sql, как это делает mysql? Было бы хорошо, если бы я мог просто mysqldump файл и использовать его для тестирования, вместо того, чтобы использовать некоторые"хакерские обходные пути".

Спасибо!


0 ответов