Я работаю над новым проектом Oracle ADF, в котором используется база данных Oragle 10g, и я использую Unitils и DBMaintainer в нашем проекте для:
- обновление структуры БД
- * 1006 модульное тестирование *
- прочитано в начальных данных
- прочитано в тестовых данных
- Элемент списка
В нашем проекте у нас есть 2 схемы и пользователи 2 дБ, которые имеют право подключаться к этим схемам. У меня есть они в структуре папок с добавочными именами, и я использую @convention для именования сценариев.
001_@schemaA_name.sql
002_@schemaB_name.sql
003_@schemaA_name.sql
Это прекрасно работает с задачей обновления ant и DBMaintainer, и я предоставляю несколько имен пользователей, настраивая дополнительные элементы для задачи ant.
<target name="create" depends="users-drop, users-create" description="This tasks ... ">
<updateDatabase scriptLocations="${dbscript.maintainer.dir}" autoCreateDbMaintainScriptsTable="true">
<database name="${db.user.dans}" driverClassName="${driver}" userName="${db.user.dans}" password="${db.user.dans.pwd}" url="${db.url.full}" schemaNames="${db.user.dans}" />
<database name="idp" driverClassName="${driver}" userName="${db.user.idp}"
password="${db.user.idp.pwd}" url="${db.url.full}" schemaNames="${db.user.idp}" />
</updateDatabase>
</target>
Однако я не могу понять, как заставить задачу обновления DBMaintainer создавать схемы xsd из моих схем БД?
Итак, я решил использовать Unitils, так как его обновление создает схемы xsd.
Я не нашел ни описания, ни документации для задач Unitils ant - кто-нибудь может дать какие-нибудь советы?
В настоящее время я решил запустить Unitils, создав тест Junit с аннотацией @Dataset. Я могу заставить его работать с одной схемой и одним пользователем БД. Но у меня нет идей, как заставить его работать с несколькими пользователями?
Вот настройка unitils-local.properties, которую я имею:
database.url=jdbc\:oracle\:thin\:@localhost\:1521\:vipu
database.schemaNames=a,b
database.userName=a
database.password=a1
Кто-нибудь из вас, ребята, может дать мне совет, как заставить Unitils работать со вторым пользователем / схемой?
Буду очень признателен за вашу помощь!