I'm having problems running multiple SQL statements in one activaction from Groovy.
sql = Sql.newInstance("jdbc:mysql://localhost/", "usre", "pass", "com.mysql.jdbc.Driver")
sql.execute("USE foo; "); // this works
sql.execute("USE foo; USE foo;"); // this fails miserably
The error I'm getting is "You have an error in your SQL syntax". What gives?
解决方案
You can simply augment the following jdbc url parameter to your connection string
From the docs:
Allow the use of ';' to delimit
multiple queries during one statement
(true/false), defaults to 'false'
For example:
Sql.newInstance("jdbc:mysql://localhost?allowMultiQueries=true", "usre", "pass", "com.mysql.jdbc.Driver")