Try reading the documentation again.

On Tue, Dec 11, 2012 at 3:57 PM, Penta <andrea.quintava...@gmail.com> wrote:

> Hi, i must use an IN clause in a PreparedStatement, and as stated in
> http://www.h2database.com/html/performance.html (Prepared Statements and
> IN(...)) I used the setObject() method.
>
> This is my test case but something is wrong and no records are returned
> from my PreparedStatement. What's wrong?
>
> import java.sql.Connection;
> import java.sql.DriverManager;
> import java.sql.PreparedStatement;
> import java.sql.ResultSet;
> import java.sql.Statement;
>
> import org.h2.util.JdbcUtils;
>
> public class TestSelect {
>
> public static void main(String[] args) throws Exception {
> Connection conn = null;
> Statement stmt = null;
>  PreparedStatement pstmt = null;
> ResultSet rs = null;
> try {
>  Class.forName("org.h2.Driver");
> conn = DriverManager.getConnection("jdbc:h2:mem:test", "sa", "sa");
>
> stmt = conn.createStatement();
> stmt.execute("create temp table mytest(pk identity, col varchar(20))");
>  stmt.execute("insert into mytest (col) values('1')");
> stmt.execute("insert into mytest (col) values('2')");
>  stmt.execute("insert into mytest (col) values('3')");
>
> //this doesn't work, no records returned
>  pstmt = conn.prepareStatement("select pk from mytest where col in (?)");
> pstmt.setObject(1, new Object[] { "1", "2" });
>  rs = pstmt.executeQuery();
> while (rs.next()) {
> System.out.println("pk " + rs.getLong(1));
>  }
>
> JdbcUtils.closeSilently(rs);
> JdbcUtils.closeSilently(pstmt);
>  //this works
> pstmt = conn.prepareStatement("select pk from mytest where col in
> ('1','2')");
>  rs = pstmt.executeQuery();
> while (rs.next()) {
> System.out.println("pk " + rs.getLong(1));
>  }
> } finally {
> JdbcUtils.closeSilently(rs);
> JdbcUtils.closeSilently(pstmt);
>  JdbcUtils.closeSilently(conn);
> }
> }
> }
>
>  --
> You received this message because you are subscribed to the Google Groups
> "H2 Database" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/h2-database/-/KNhefTqWTKEJ.
> To post to this group, send email to h2-database@googlegroups.com.
> To unsubscribe from this group, send email to
> h2-database+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/h2-database?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To post to this group, send email to h2-database@googlegroups.com.
To unsubscribe from this group, send email to 
h2-database+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/h2-database?hl=en.

Reply via email to