......~!
  昏 ~~~~~
你看下面     private Connection con=null;
     private PreparedStatement psmt=null;
     private ResultSet rs=null;
     private DBConnectionManager dbm=null;     //从数据库连接池得到一个连接       
      con=dbm.getConnection("sqlserver");
      //定义一个问号                   
      psmt=con.prepareStatement("select * from news where username=?");
      //在第1个问号处加入参数,参数为String对象 
      psmt.setString(1,String对象);
      //设置最多记录数
      psmt.setMaxRows(10);
      //执行查询语句
      rs=psmt.executeQuery();

解决方案 »

  1.   

    你的应该这么写就ok了:
    String sql="select * from test where name='"+ name + "'";
      

  2.   

    String sql="select * from test where name='"+ name + "'";
    这样就没有问题了,
    不过~~~~
    请教:
    psmt=con.prepareStatement("select * from news where username=?");
          //在第1个问号处加入参数,参数为String对象 
          psmt.setString(1,String对象);
    这里不太明白,能说细点吗?
      

  3.   

    这是两种不同的操作数据库的方法
    prepareStatement是先写出sql语句的摸板,然后把变量用值代替
    比如:psmt=con.prepareStatement("select * from news where username=? and pwd =?");
          String name = "tom";
          String password = "123";
          psmt.setString(1,name);
          psmt.setString(2,password);
    就相当于一般的方法:
    String sql = "select * from news where username='"+name+"' and pwd='"+password+"'";
    db.executeQuery(sql);   
      

  4.   

    HueVan(冰与火)说的对
    至于 Net8Java(杜杜) 说的也是一种解决办法