如何在java中执行多个postgres查询?

时间:2016-04-05 19:37:30

标签: java postgresql jdbc

我知道如何运行一个简单的" select * from table"在java postgres jdbc connector。

但是我们如何运行两个或多个语句,其中statement2依赖于使用java / JDBC-Postgres的statement1?

Example #1:
SET search_path TO a,b,c;
Select * from table1;

Example #2:
Create temporary table tempabc ... definition and value;
Select * from tableDEF inner join tempabc USING (tableDEF.refid = tableDEF.id) where table a=1;

这个问题可能已经得到解答,但我找不到重复的问题。 如果没有任何直截了当的JDBC-Postgres方式让我知道其他方式。 谢谢!

2 个答案:

答案 0 :(得分:2)

这可能是您正在寻找的:批处理语句。需要注意的是,您的语句必须是insert / update / delete(actions)。

http://www.mkyong.com/jdbc/jdbc-preparedstatement-example-batch-update/

JavaDoc for addBatch

或者,您可以执行存储过程并返回游标。更多相关内容:https://stackoverflow.com/a/10804730/559095

答案 1 :(得分:2)

对于第一个问题,您可以使用setSchema更改搜索路径 至于第二个,只要你使用相同的连接,临时表就会在那里。