Как правильно использовать Speedment для доступа к схеме базы данных, отличной от схемы по умолчанию?

В моем проекте я использую Speedment для ORM. Конечно, я хочу, чтобы мой код был правильно протестирован. Поэтому я решил создать идентичную копию моей схемы базы данных по умолчанию, которую я хотел использовать для модульного тестирования. В этом случае имя исходной схемы - "проект", а имя копии - "test_project".

Моя проблема в том, что я не знаю, как правильно обращаться к другой схеме базы данных.
Я знаю, что после установления соединения я могу использовать метод withSchema("test_project") сообщить скорости, какую схему использовать. Это работает очень хорошо, пока у меня нет идентификаторов столбцов в моем запросе.

Так что это работает:

List <User> users = userManager.stream().collect(Collectors.toList());

тогда как это не так:

List <User> users = userManager.stream().filter(User.UID.equal(id)).collect(Collectors.toList());  

Это говорит мне это: Unknown column 'project.User.uid' in 'where clause

Я не очень понимаю, что там происходит. (Примечание: я совсем новичок в Speedment).
У меня вопрос: как я могу получить доступ к моей другой схеме со всеми ее строками, правильно адресованными ей?

1 ответ

Это была ошибка в Speedment. Изменение схемы withSchema("test_project") это правильный путь. Это будет исправлено в версии 3.0.23 Speedment.

Другие вопросы по тегам