RT我编写程序时遇到一个问题在预编译的时候如何实现模糊查询如果写成SQL的话可以是select * from tablename where title like '%%'但是如果用预编译的话应该如何实现呢?

解决方案 »

  1.   

    sql = "select * from tablename where title like ?";
    ps = conn.preparedStatement(sql);
    ps.setString(1,"%%");
    rs = ps.executeQuery();
      

  2.   

    预编译的sql语句和正常的查询只是差别在传值而已
      

  3.   

    我想实现的是等效于select * from tablename where title like '%1%'问的是SQL语句应该怎么写如果sql = "select * from tablename where title like ?";
    ps = conn.preparedStatement(sql);
    ps.setString(1,"%%");
    rs = ps.executeQuery();这样写的话那么是否能够把全部记录都查出来呢
      

  4.   

    sql = "select * from tablename where title like ?";
    ps = conn.preparedStatement(sql);
    ps.setString(1,"%1%");
    rs = ps.executeQuery();
    这样不就是你所要的结果吗?
      

  5.   

    sql = "select * from tablename where title like %?&";
    ps = conn.preparedStatement(sql);
    ps.setString(1,"1");
    rs = ps.executeQuery();