You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Su...@ubs.com on 2008/03/12 20:30:52 UTC

SQL scripts in ANT

Hi Experts..

	I need to run multiple SQL scripts thru ANT...Following is my
code snippet :


			<sql
			    driver="oracle.jdbc.driver.OracleDriver"
			    url="jdbc:oracle:thin:@server.com:DATABASE"
			    userid="${uid}"
			    password="${passwd}"
			    print="yes"
			    onerror="continue"
 
output="${build.output.root}/output/sql/outputfile.txt"
    			    >				
    			    	<classpath>
			        <pathelement
location="/path/to/jdbc.jar"/>
			 	</classpath>
    			    <transaction
src="${PLSQL_ROOT}\DropTables.sql" />
			    <transaction
src="${PLSQL_ROOT}\createTables.sql" />
				    
			 </sql>


I tried putting all the *.sql scripts inside one and call that like 

<src="${PLSQL_ROOT}\MasterScript.sql" />

MasterScript.sql contains following :

@DropTables

@createTables

But , ANT is not able to recognise "@" exits..


Is there a way to accomplish this ?? This would be lot easier to manage,
as we can comment/uncomment depending on the scenario instead of
changing the build script everytime.


Please suggest something..

Thanks,
Sumit

RE: SQL scripts in ANT

Posted by "Anderson, Rob (Global Trade)" <Ro...@nike.com>.
The usage of @filename in a sql script works in sqlplus because that is
a feature of sqlplus. When executing sql from ant, you are using a jdbc
connection and database specific things like this do not work.

Use a fileset to execute all the files you intent to execute. See the
documentation for the sql task for an example.

-Rob Anderson

-----Original Message-----
From: Sumit.Srivastava@ubs.com [mailto:Sumit.Srivastava@ubs.com] 
Sent: Thursday, March 13, 2008 7:47 AM
To: user@ant.apache.org
Subject: RE: SQL scripts in ANT

Hi Robert..
Thanks for the suggestions, unfortunately none works with ANT 1.7

The other way of doing it would be to create different ANT targets to
run different scripts and call them as per requirement..
This doesn't make a lot of sense to me, as that would not be the best
way to do it in our scenario where we have 10 different scripts to
run..but will have to use it if there is no go.

Let me know if something else flashes in your mind.

Thanks,
Sumit

-----Original Message-----
From: Rebhan, Gilbert [mailto:Gilbert.Rebhan@huk-coburg.de] 
Sent: Thursday, March 13, 2008 7:17 AM
To: Ant Users List
Subject: RE: SQL scripts in ANT

 
 
From: Sumit.Srivastava@ubs.com [mailto:Sumit.Srivastava@ubs.com]
Sent: Wednesday, March 12, 2008 8:31 PM
To: user@ant.apache.org
Subject: SQL scripts in ANT

/*
Hi Experts.. 
*/

i'm neither a sql nor an oracle expert ;-) ...

/*
I tried putting all the *.sql scripts inside one and call that like 

<src="${PLSQL_ROOT}\MasterScript.sql" /> 

MasterScript.sql contains following : 
@DropTables
@createTables 

But , ANT is not able to recognise "@" exits.. 

Is there a way to accomplish this ??
*/

... but i try =

1.
did you try START instead of @ ?

means, use

START DropTables
START createTables

As far as i remember in sql plus START command is similar to @

2.
maybe @ works when escaped, means try to write @@


Regards, Gilbert

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org For additional
commands, e-mail: user-help@ant.apache.org

Visit our website at http://www.ubs.com

This message contains confidential information and is intended only 
for the individual named.  If you are not the named addressee you 
should not disseminate, distribute or copy this e-mail.  Please 
notify the sender immediately by e-mail if you have received this 
e-mail by mistake and delete this e-mail from your system.
	
E-mails are not encrypted and cannot be guaranteed to be secure or 
error-free as information could be intercepted, corrupted, lost, 
destroyed, arrive late or incomplete, or contain viruses.  The sender 
therefore does not accept liability for any errors or omissions in the 
contents of this message which arise as a result of e-mail transmission.

If verification is required please request a hard-copy version.  This 
message is provided for informational purposes and should not be 
construed as a solicitation or offer to buy or sell any securities 
or related financial instruments.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


RE: SQL scripts in ANT

Posted by Su...@ubs.com.
Hi Robert..
Thanks for the suggestions, unfortunately none works with ANT 1.7

The other way of doing it would be to create different ANT targets to
run different scripts and call them as per requirement..
This doesn't make a lot of sense to me, as that would not be the best
way to do it in our scenario where we have 10 different scripts to
run..but will have to use it if there is no go.

Let me know if something else flashes in your mind.

Thanks,
Sumit

-----Original Message-----
From: Rebhan, Gilbert [mailto:Gilbert.Rebhan@huk-coburg.de] 
Sent: Thursday, March 13, 2008 7:17 AM
To: Ant Users List
Subject: RE: SQL scripts in ANT

 
 
From: Sumit.Srivastava@ubs.com [mailto:Sumit.Srivastava@ubs.com]
Sent: Wednesday, March 12, 2008 8:31 PM
To: user@ant.apache.org
Subject: SQL scripts in ANT

/*
Hi Experts.. 
*/

i'm neither a sql nor an oracle expert ;-) ...

/*
I tried putting all the *.sql scripts inside one and call that like 

<src="${PLSQL_ROOT}\MasterScript.sql" /> 

MasterScript.sql contains following : 
@DropTables
@createTables 

But , ANT is not able to recognise "@" exits.. 

Is there a way to accomplish this ??
*/

... but i try =

1.
did you try START instead of @ ?

means, use

START DropTables
START createTables

As far as i remember in sql plus START command is similar to @

2.
maybe @ works when escaped, means try to write @@


Regards, Gilbert

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org For additional
commands, e-mail: user-help@ant.apache.org

Visit our website at http://www.ubs.com

This message contains confidential information and is intended only 
for the individual named.  If you are not the named addressee you 
should not disseminate, distribute or copy this e-mail.  Please 
notify the sender immediately by e-mail if you have received this 
e-mail by mistake and delete this e-mail from your system.
	
E-mails are not encrypted and cannot be guaranteed to be secure or 
error-free as information could be intercepted, corrupted, lost, 
destroyed, arrive late or incomplete, or contain viruses.  The sender 
therefore does not accept liability for any errors or omissions in the 
contents of this message which arise as a result of e-mail transmission.  
If verification is required please request a hard-copy version.  This 
message is provided for informational purposes and should not be 
construed as a solicitation or offer to buy or sell any securities 
or related financial instruments.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


RE: SQL scripts in ANT

Posted by "Rebhan, Gilbert" <Gi...@huk-coburg.de>.
 
 
From: Sumit.Srivastava@ubs.com [mailto:Sumit.Srivastava@ubs.com] 
Sent: Wednesday, March 12, 2008 8:31 PM
To: user@ant.apache.org
Subject: SQL scripts in ANT

/*
Hi Experts.. 
*/

i'm neither a sql nor an oracle expert ;-)
...

/*
I tried putting all the *.sql scripts inside one and call that like 

<src="${PLSQL_ROOT}\MasterScript.sql" /> 

MasterScript.sql contains following : 
@DropTables 
@createTables 

But , ANT is not able to recognise "@" exits.. 

Is there a way to accomplish this ??
*/

... but i try =

1.
did you try START instead of @ ?

means, use

START DropTables
START createTables

As far as i remember in sql plus START command is similar to @

2.
maybe @ works when escaped, means try to write @@


Regards, Gilbert

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org