dimanche 24 janvier 2010

ant : exécuter des ordres SQL


Description


Ant permet de traiter des scripts SQL pour peu que les connecteurs jdbc existent.
Voici un exemple simple permettant de récupérer l'utilisateur connecté à une base Oracle.


Exemple


Dans cet exemple, nous récupérons dans un fichier CSV le résultat de l'exécution d'une requête Oracle simple pour lesquels certains paramètres de connexions sont passés via des constantes.

Pour tester, taper la ligne suivante en ligne de commande :ant -f getSqlUser.xml
à supposer que le fichier d'exemple ci-après se nomme getSqlUser.xml.


<?xml version="1.0" encoding="ISO-8859-1"?>

<project name="doSQL" default="doSqlTout" basedir=".">

<description> truc </description>

<property name="sql.rep.out" value="out/sql"/>
<property name="sql.rep.lib" value="lib"/>

<property name="oracle.userid" value="moi"/>
<property name="oracle.password" value="moi"/>
<property name="oracle.sid" value="mabase"/>

<target name="doSqlTout">
<mkdir dir="${sql.rep.out}"/>
<sql
driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@:1521:${oracle.sid}"
userid="${oracle.userid}"
password="${oracle.password}"
output="${sql.rep.out}/sortie.csv"
classpath="${sql.rep.lib}/OracleThinDrivers.jar"
print="yes"
delimiter=";"
>
select user from dual ;
</sql>

</target>

</project>


Bonnes pratiques



  • utiliser des propriétés ( des constantes ) pour la réutilisabilité du code.



Bon point



  • la gestion normalisée des warning depuis ant v 1.8

  • la gestion correctes des ordres DDL ( create, drop, ... ) depuis ant v 1.7 concernant les warning associés


Plus d'informations sur





Aucun commentaire:

Enregistrer un commentaire