Why are URL, Username and Password required when running the updateDatabase task from ant with outputFile specified? I would think the outputFile makes sense when you can't connect to the database for whatever reason and need to create a SQL file to hand to the DBA.
Would it be possible to add an option make it not connect to a Database. I easily see the following situation. A business partner wants to use our application. But we have no access to their database. They would require a SQL script so they can review it and run it manually. This would require us to have the same vendor/version of their database on our side, just to generate a sql script.
It would be nice if, the "noconnect" option was specified that vendor specific sql was part of the output file that checks which changelogs need to be applied.
The trouble is that we need the databasechangelog table from the database to know what changes have not been run. You could always just have a database with a copy of that one table, or a dump of that table from the database you want to update that you load into a local database when you generate the output script.
Depending on how well you know what has been applied and not, you could even generate the outputFile from another database that is known to be in the same state (like a QA or dev database)