PreparedStatement stmt = conn.prepareStatement(SQL);
才对后面的prepare没有d

解决方案 »

  1.   

    还不行的话,试下
    SQL = "select * from table where modeCode like '%?%'";
    ..
    stmt.setString(1,params);
      

  2.   

    sorry,是我写错了
    原句是PreparedStatement stmt = conn.prepareStatement(SQL);
    如果这样写的话
    SQL = "select * from table where modeCode like '%?%'";
    会出现这样的错误:
    java.sql.SQLException: ORA-01006: bind variable does not exist
      

  3.   

    如果直接
    SQL = "select * from table where modeCode like '%"+params+"%'";
    行不行
      

  4.   

    直接这样写行
    我原来就是这样写的,后来想用preparedStatement
      

  5.   

    试下
    PreparedStatement stmt = conn.prepareStatement(SQL);
    stmt.setString(1, new String("%" + params + "%"));
      

  6.   

    PreparedStatement stmt = conn.prepareStatement(SQL);
    stmt.setString(1, "'%" + params + "%'");在数据库中,字符串都要用单引号括起来。
      

  7.   

    stmt.setString(1, new String("%" + params + "%"));
    这样也不行
    stmt.setString(1, "'%" + params + "%'");
    这样已经试过了,不行