数据库查询结果保存到RESULTSET sqlRst里面,
用<%=sqlRst.getString(1)%>能将打印出来,可是用 String str=sqlRst.getString(1);却无法对str赋值,str一直是null。
这是怎么回事????
数据库的javabean:
package Bean;import java.sql.*;public class MyDbBean {
  private Statement stmt = null;
  ResultSet rs = null;
  private Connection conn = null;//构造函数
  public MyDbBean() {
  }//根据dsn参数,加载驱动程序,建立连接
  public void OpenConn(String dsn, String uid, String pwd) throws Exception {
 try {
  dsn = "jdbc:odbc:" + dsn;
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  conn = DriverManager.getConnection(dsn, uid, pwd);
  } 
  catch (Exception ex) {
   System.err.println("aq.executeQuery: " + ex.getMessage());
  }
  }//执行查询类的SQL语句,有返回集
  public ResultSet executeQuery(String sql) {
    rs = null;
    try {
    stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);    rs = stmt.executeQuery(sql);
    } 
    catch(SQLException ex) { 
     System.err.println("aq.executeQuery: " + ex.getMessage());
    }
    return rs;
  }
  
//执行更新类的SQL语句,无返回集
  public void executeUpdate(String sql) {
    stmt = null;
    rs=null;
    try {
    stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
    stmt.executeQuery(sql);
    stmt.close();
    conn.close();
    } 
    catch(SQLException ex) { 
      System.err.println("aq.executeQuery: " + ex.getMessage());
    }
  }//关闭对象
  public void closeStmt(){
    try{
      stmt.close();
     }
    catch(SQLException ex) { 
      System.err.println("aq.executeQuery: " + ex.getMessage());
     }
  }  public void closeConn(){
    try{
      conn.close();
     }
    catch(SQLException ex) { 
      System.err.println("aq.executeQuery: " + ex.getMessage());
     }
  }
}查询代码:
   <jsp:useBean id="MyDataBean" scope="page" class="Bean.MyDbBean"></jsp:useBean>
  <%
  MyDataBean.OpenConn("hotel","sa","");
  sql="select * from room where Sex='"+sex+"' or Sex is NULL";
  sqlRst=MyDataBean.executeQuery(sql);
  %>