В настоящее время я разрабатываю веб-приложение, которое использует Oracle в качестве базы данных.Мне уже сообщили, что мое веб-приложение также должно работать на Sybase ASE.Моя база данных Oracle использует последовательности для генерации идентификаторов, и я сопоставил свои доменные классы для использования этих последовательностей.Насколько я знаю, у Sybase ASE нет последовательностей, но есть тождества.И вот моя проблема.Что делать с кодом / конфигурацией для работы с Oracle и Sybase.Некоторое «условное сопоставление» идентификатора для каждого домена подойдет.
Я просто не хочу комментировать / раскомментировать строки в отображениях каждый раз, когда я создаю веб-приложение для базы данных, отличной от уже отображенной. Кто-нибудь знает, что делать?
Есть еще одна опасность: еще одно различие между Oracle и Sybase, которое влияет на отображение (я не генерирую структуру базы данных, используя dbCreate = "create"
).На данный момент я ничего не вижу. Есть опыт?
РЕДАКТИРОВАТЬ: Оказалось, что невозможно сделать одно сопоставление для обеих баз данных.Моя структура Oracle использует кавычки в именах столбцов и таблиц.И цитаты не допускаются в Sybase ASE.Мое (не приятное и симпатичное) решение - это изменение (комментарий / раскомментирование) отображения при создании веб-приложения на какой-то конкретной платформе.
Кстати, я большой поклонник Grails, и это отображение кажется недостатком.Если бы я использовал «чистый» Hibernate, у меня было бы два отображения в XML-файлах, и я бы изменил их в зависимости от базовой базы данных.Но Grails не дает мне возможности иметь два отображения.