Какая из доступных в памяти баз данных лучше всего поддерживает специальные функции SQL Server?Java-база данных с памятью с поддержкой SQL Server
Я пытался с H2, но имел проблемы, например, с экранирующими именами столбцов: во всех наших наших sql-запросах мы используем (нестандартный) [FIELDNAME] вместо «FIELDNAME». По-видимому, это не поддерживается H2. Могут быть и другие нестандартные функции, которые могут быть использованы, поэтому я задаюсь вопросом, знает ли кто-нибудь о конкретной базе данных, которая ориентирована на совместимость с SQL Server.
Чтобы использовать это в контексте, я использую maven и maven-sql-plugin для создания базы данных перед запуском тестов.
Я смотрел на
- H2
- HSQL
- Derby
, но не может определить, какой из них имел лучшую поддержку для SQL Server или если есть другие, чтобы посмотреть в.
Почему бы не запустить тесты в базе данных разработки SQL Server? Я использовал эту стратегию (хотя с Oracle и PostgreSQL) в нескольких проектах, и она всегда работала хорошо. Вы сохраняете начальную стоимость создания базы данных в базе данных + базовую загрузку данных и избегаете проблем с совместимостью с БД. –
@ Rogério: Я хочу иметь возможность запускать тесты автоматически на Jenkins и быть на 100% уверенным, что никто другой не работает с одной и той же базой данных одновременно и, возможно, изменяет данные. То, что вы предлагаете, - это то, как мы на самом деле делаем это прямо сейчас, и я хотел бы улучшить это. – inovaovao
Ваши тесты никогда не должны связывать транзакцию с базой данных. Таким образом, они всегда будут изолироваться друг от друга, как и должно быть. –