ExecuteSQLUpdates.groovy
28/01/2009
import groovy.text.* import groovy.sql.*; import java.io.*; import java.util.*; import java.sql.*; import java.text.*; boolean debug = false; void printUsage() { println "Usage: ExecuteUpdates.groovy [-debug] [-url URL] [SQL File]" println " ExecuteUpdates.groovy [-debug] [-url URL] [SQL UPDATE/INSERT/DELETE Query]" println "" println " NOTE: For executing more than one query you can use character / to separate them." println "" println " This script is able to execute any type of queries, (usefull to create stored procedures)" System.exit(1); } // Prepare connection ------------------------------------------ driver = "oracle.jdbc.OracleDriver"; url = "jdbc:oracle:thin:USER/PASS@HOST:1521:DB" // ------------------------------------------------------------- // Verify inputs if(args == null || args.length == 0 || args[0].length() == 0) printUsage() switch(args[0]) { case ["-debug", "--debug", "debug", "-d"]: debug = true if(args.length == 1 || args[1].length() == 0) printUsage() args[0] = args[1] if(args.length >= 3 && args[2].length() > 0) args[1] = args[2] if(args.length >= 4 && args[3].length() > 0) args[2] = args[3] break; case ["-url", "--url", "url"]: if(args.length < 3 || args[1].length() == 0 || args[2].length() == 0) printUsage() url = args[1] args[0] = args[2] if(args.length > 3 && args[3].length() > 0) args[1] = args[3] break; default: if(args[0].startsWith("-")) printUsage() break; } switch(args[0]) { case ["-debug", "--debug", "debug", "-d"]: debug = true if(args.length == 1 || args[1].length() == 0) printUsage() args[0] = args[1] if(args.length >= 3 && args[2].length() > 0) args[1] = args[2] if(args.length >= 4 && args[3].length() > 0) args[2] = args[3] break; case ["-url", "--url", "url"]: if(args.length < 3 || args[1].length() == 0 || args[2].length() == 0 || args[3].length() == 0) printUsage() url = args[1] args[0] = args[2] break; default: if(args[0].startsWith("-")) printUsage() break; } println "Using URL: "+url // ------- This script is not finish because I did not manage to add the entire code in -------