"select * from login where user like "'%" + user + "%'";这样就可以了

解决方案 »

  1.   

    楼上所说的对,但还要看看textField.getText()是不是被加上了空格了…
      

  2.   

    谢谢老兄,不过冷水兄的语句好像写错了,应该为:"select * from login where user like '%"+user+"%'";
      

  3.   

    还是不行啊,我现在把代码贴在下面:
      String query="select password from login where user like "+"'%"+sql.getText()+"%'";
       JOptionPane.showMessageDialog(null,query);
       String url="jdbc:odbc:123";
       Connection con=null;
       PreparedStatement statement=null;
       ResultSet result=null;
       try{
         Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         con = DriverManager.getConnection(url, "sa", "0775");
         statement=con.prepareStatement(query,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
     //    statement.setString(1,sql.getText());
         result=statement.executeQuery();
        if(result.next())   //如果有记录的话
         {  sql.setText(result.getString("password"));
            JOptionPane.showMessageDialog(null,"已经查找到记录,请查收!");
            return;
         }
         else
         {   JOptionPane.showMessageDialog(null,"对不起,没有找到满足条件的记录!");
             sql.setText("");
             return;
         }
       }catch(Exception ex){ex.printStackTrace();}
      }
    比如输入"七小对",执行总是弹出对话框说没有找到满足条件的记录,麻烦再帮忙看看啊.