问个JDBC问题 请高手指教
早上的问题解决了
现在
Class.forName(DRIVER) ;
Connection conn= DriverManager.getConnection(Url,User,Pw);
String sql = "SELECT name FROM user1 WHERE userid=? AND password=?" ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,request.getParameter("id")) ;
pstmt.setString(2,request.getParameter("password")) ;
rs = pstmt.executeQuery() ; // 查询
if(rs.next())
{ // 如果有数据,则可以执行
flag = true ; // 表示登陆成功
name = rs.getString(1) ;
}
我测过数据库连的上
request.getParameter("id") request.getParameter("password")这2个值取的到 而且在数据库里面也有对应的数据
但取不到 name值 不知道哪出问题了
------解决方案--------------------把SQL语句放在数据库能查询出来么?多检查检查单词什么的.
------解决方案--------------------userid 是int存储的么?
------解决方案--------------------
name = rs.getString("name");
试试
根据列名获取数据。
如果不行,同楼上,也可以在获得rs之后,System.out.println(rs.next());看看有没有获得数据,获得不了,就把sql在数据库里面查查吧