例如查询: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";
它没有正常工作?
答案 0 :(得分:4)
您正在寻找多语句请求(MSR)。它只是将多个SQL语句发送到由分号分隔的服务器。
但是你不能在单个MSR中混合使用DDL和DML,因为必须立即提交DDL并将MSR视为事务(在Teradata会话中运行时)。
尝试两个单独的请求:
create table ;
select xxx ; delete ;