Доступ к таблицам базы данных mem или fs с помощью консоли H2

Я пытаюсь получить доступ к моим таблицам приложений в Play! Framework, но я не могу найти его с помощью консоли. Например, у меня есть две модели сущностей: Address и Campus.

Я могу создавать объекты и сохранять нормально, но мне хотелось бы видеть изменения в fs или mem DB, но консоль H2 не отображает таблицы Address и Campus. Я использую настройки по умолчанию для входа в систему localhost:9000/@db.

Что я делаю неправильно?

Спасибо заранее.

Ответы

Ответ 1

Правильный URL для базы данных inmemory:

jdbc:h2:mem:name-of-your-play-db

Ответ 2

Шаги, которые я предпринял, чтобы получить консоль базы данных файловой системы H2, где мое приложение находится в c:\play\myapp:

  • Перейти к localhost: 9000/@db
  • Выберите первый вариант сервера H2 в первом поле
  • Для ввода URL введите jdbc:h2:file:c:/play/myapp/db/h2/play
  • Имя пользователя - пароль sa пустой.

Ответ 3

Скорее всего, проблема связана с URL-адресом базы данных, поэтому ваше приложение и Консоль H2 используют разные базы данных. Я предлагаю использовать URL-адрес базы данных формы jdbc:h2:~/data/test или (возможно, даже лучше) с использованием абсолютного пути формы jdbc:h2:/data/test или при использовании Windows даже с буквой диска: jdbc:h2:c:/data/test. См. Документацию о где хранятся файлы базы данных.