我使用java和postresql驱动程序,我希望在一个语句中运行多个查询(如果可能的话)
我知道像这样运行批量查询:
pstmt = connection.createStatement();
pstmt.addBatch("query1 here");
pstmt.addBatch("query2 here");
pstmt.executeBatch();
但有没有办法用参数执行多次查询?
这样的事情:
pstmt = connection.prepareStatement(
"UPDATE TABLE Example SET name=? WHERE id = ?;\n" +
"UPDATE TABLE Other SET name=? WHERE id = ?;"
);
pstmt.setInt(1, "name");
pstmt.setInt(2, id1);
pstmt.setInt(3, "kuku");
pstmt.setInt(4, id2);
pstmt.execute();
-
更新
评论中的链接(this)回答了我的一半问题。
此外,我想知道是否有办法运行两个不同的查询。
让我们说上面的查询是:
UPDATE table1 SET col=? WHERE id=?;
INSERT INTO table2 VALUES (?, ?, ?);
因为似乎没有办法做到这一点......:/ 感谢。