2016-01-15 3 views
1

Мы используем SQLServer в производстве, но HSQLDB для наших интеграционных тестов. HSQLDB используется, потому что это база данных в памяти.Значения даты тестирования с помощью HSQLDB

У меня есть SQLServer SQL, который выполняет следующий код:

select convert(varchar(8), pos_val_date, 112) 
from wscpos; 

В HSQLDB, это не работает. Код должен быть:

select to_char(pos_val_date, 'YYYYMMDD') 
from wscpos; 

Что лучшая практика, чтобы адаптировать мой код таким образом, что он работает как в производстве, так и в моей интеграции тест?

+2

Используйте SQLServer Express для своих тестов и вообще не меняйте код –

+0

Используйте ту же базу данных для тестов производительности и интеграции, если вы действительно хотите увидеть, будет ли ваш код работать. –

+0

Я предполагаю, что OP не заметил, что они хотят решения в памяти. Я не уверен, сможет ли это предоставить MS SQL. – medveshonok117

ответ

0

Если вы склонны изменить свою БД для интеграции тестов, я бы рекомендовал принять H2 с помощью MODE = MSSQLServer который должен обеспечить лучшую совместимость против MS SQL Server, лучше, чем то, что HSQLDB дает вам сейчас.

+0

очень интересно, это работало на простом примере, который я опубликовал, но у меня все еще есть некоторые несовместимости, поскольку мой SQL более сложный, чем тот, который показан в вопросе ... но я буду исследовать это. –

Смежные вопросы