例如查询:create table ; select xxx ; delete ;

如何在一个会话中执行它?

我看到了有关mysql similar question的一个答案。诀窍是打开allow multiple queries

String dbUrl = "jdbc:mysql:///test?allowMultiQueries=true";




对于Teradata,
解决办法是什么 ?

我试过了

String dbUrl = "jdbc:odbc:dsn?allowMultiQueries=true";


它不能正常工作吗?

最佳答案

您正在寻找一个多语句请求(MSR)。它只是将多个SQL语句发送到由分号分隔的服务器。

但是您不能将DDL和DML混合在单个MSR中,因为必须立即提交DDL并将MSR视为事务(在Teradata会话中运行时)。

尝试两个单独的请求:

create table ;

select xxx ; delete ;

09-25 20:58