Как запустить сценарий SQL перед запуском приложения с помощью Slick?

Есть ли способ с Slick, чтобы вы могли запускать код SQL до запуска приложения или в тестовой настройке, как в Hibernate?

См. пример https://github.com/geowarin/hibernate-examples/tree/master/standalone-data-jpa/src/main/resources


person decapo    schedule 09.01.2016    source источник


Ответы (2)


Вы можете использовать Evolutions в фреймворке Play. Если вы используете play-slick, вы можете добавить зависимость play-slick-evolutions и убедиться, что play.evolutions.enabled не установлено в false в application.conf.

https://www.playframework.com/documentation/2.4.x/Evolutions

https://www.playframework.com/documentation/2.4.x/PlaySlick

[ОБНОВИТЬ]

Согласно вашему комментарию, это похоже, вы хотите, чтобы ваш SQL запускался при запуске, а не при миграции. Если это так, вы можете использовать JavaGlobal/ScalaGlobal для Play ‹ 2.4. В противном случае вы можете ознакомиться с документом 2.4 GlobalSettings.

person TheKojuEffect    schedule 09.01.2016
comment
Спасибо. Эволюции включены. Я имел в виду часть загрузки данных. Могу ли я создать сценарий со значениями Insert Into Table (Blah) (Blah, Blah Blah, 3), которые Slick будет искать и запускать до запуска приложения и после миграции. - person decapo; 09.01.2016
comment
Вы можете попробовать использовать GlobalSettings в фреймворке Play. - person TheKojuEffect; 09.01.2016
comment
Я использую плей 2.4. Я все еще в замешательстве. Должен ли я определить модуль с активной привязкой для запуска сценария SQL? Как я могу это сделать? Кроме того, как бы вы сделали это только с проектом sbt, который использовал slick без Play? - person decapo; 09.01.2016
comment
Если это был простой красивый проект, обратитесь к шаблону hello-slick. github.com/typesafehub/activator- hello-slick/blob/master/ - person TheKojuEffect; 09.01.2016
comment
Ok. Это добавление данных с помощью кода Scala. Мне было любопытно добавить данные с помощью скрипта sql без необходимости писать код Scala для вставки. У меня есть существующая база данных, которую я могу экспортировать с операторами вставки в свое игровое приложение, но я не хочу использовать генерацию гладкой схемы. Знаете ли вы способ вызвать скрипт sql для запуска в scala? - person decapo; 09.01.2016

Мой вопрос является своего рода дублирующим вопросом. См. здесь скрипт вставки Play Framework DML.

С игровой структурой вам нужно только создать файл sql в каталоге эволюции с именем 2.sql с операторами вставки, которые вам нужны.

Я все еще пытаюсь выяснить, можете ли вы сделать что-то подобное без игры в отдельном приложении sbt.

person decapo    schedule 10.01.2016