有没有办法在 jdbc postgresql 驱动程序的准备语句中多次使用相同的变量?
例如,我想使用以下语句,但每个问号的值都相同:
PreparedStatement ps =
pg.prepareCall("SELECT * FROM mytable WHERE col1=? AND col2=? AND col3=?");
但不是输入代码三次,如:
ps.setInt(0,1);
ps.setInt(1,1);
ps.setInt(2,1);
有没有办法简单地在每个变量中使用相同的值?我想到了类似于 pypostgresql 中的用法的东西在这里可以简单地说 $1
用于每个字段。
"SELECT * FROM mytable WHERE col1=$1 AND col2=$1 AND col3=$1"
最佳答案
据我所知,纯 JDBC 不支持命名查询参数。您可以创建一个小函数来将值放在所有位置。否则,您正在考虑使用更重的东西,例如 Spring 或 JPA。
关于java - 如何在 jdbc postgresql 准备语句中多次使用相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13483889/