问题
For example a query : create table ; select xxx ; delete ;
How to execute it in one session ?
I saw one answer to a similar question about mysql. The trick is to turn on allow multiple queries
String dbUrl = "jdbc:mysql:///test?allowMultiQueries=true";
For teradata specifically, what is the solution ?
I tried
String dbUrl = "jdbc:odbc:dsn?allowMultiQueries=true";
It is not properly working ?
回答1:
You're looking for a Multi Statement Request (MSR). It's simply sending multiple SQL statements to the server sepatarated by semicolons.
But you can't mix DDL and DML in a single MSR because DDL must be immediately commited and a MSR is treated as a transaction (when running in a Teradata session).
Try two seperate requests:
create table ;
select xxx ; delete ;
来源:https://stackoverflow.com/questions/21592383/how-to-execute-multiple-queries-in-teradata