Monday, February 19, 2007

Создание схемы базы данных из Ant

При установке/тестировании приложения достаточно часто приходится создавать/пересоздавать схему базы данных. Используя Ant - это достаточно просто.
Пример:
Первое, что сделаем - это создадим файл db.properties и занесем в него необходимые нам настройки:


db.driver=oracle.jdbc.driver.OracleDriver
db.username=login
db.password=password
db.url=jdbc:oracle:thin:@127.0.0.1:1526:testdb
db.source.file=data.sql


Здесь db.driver - класс драйвера для подключения к базе данных, db.url - полный урл для доступа к базе данных, db.source.file - файл, в котором расположены SQL Query.

Теперь, собственно, сам файл build.xml (т.к. это фрагмент - файл будет предельно прост):

<?xml version="1.0"?>
<project name="build_db" default="create-db" >

<property file="db.properties" />

<path id="classpath">
<fileset dir="/lib" includes="**/*.jar" />
</path>

<target name="create-db" description="create database scheme">
<sql driver = "${db.driver}"
url = "${db.url}"
userid = "${db.username}"
password = "${db.password}"
src = "${db.source.file}"
onerror = "continue"
classpathref = "classpath"
/>
</target>
</project>


В этом файле сначала подключаем файл db.properties (теперь можно использовать параметры, определенные в нем также, как если бы они были определны непосредственно в самом build-файле)

Далее указываем свойства url, userid, password и src (думаю, эти свойства в представлении не нуждаются).

Свойство onerror - отвечает за то, будет ли продолжаться выполнение в случае возникновения ошибки при работе с базой данны. В данном случае - выполнение будет продолжено.

classpathref - это ссылка на элемент path, в котором перечислены пути поиска библиотек (например - путь до драйвера базы данных).

Вот, в общем-то и все :)

0 комментария(ев):