数据库已经连好,是在一个servlet页面里面,sql语句是这样的Class.forName("com.mysql.jdbc.Driver").newInstance();conn=DriverManager.getConnection("jdbc:mysql://localhost/mysq...
数据库已经连好,是在一个servlet页面里面,sql语句是这样的 Class.forName("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection("jdbc:mysql://localhost/mysql?user=root&password=root"); stmt = conn.createStatement(); String sql = "select uname,upassword from examuser where uname = "+ uname; //“+”号后面的uname是上面定义的通过getParameter取得的提交值 rs = stmt.executeQuery(sql); rs.next(); 执行之后前台输入uname后台无法取得值错误是这个 SQLException:Unknown column 'cancer' in 'where clause' cancer是前台jsp输入的值 但是当我把sql语句改成这样 String sql = "select uname,upassword from examuser where uname = 'cancer ' "; 直接在语句里写死一个where语句 前台就能取出来工作就正常。新手刚接触JDBC两天,我看视频里where语句就是这样在双引号外边+上变量的,视频里是int类型,我的是varchar型可是我的就不行希望有人能给解答一下 还有下面我用rs.getString()取出值。 这个的目的就是前台输入账号密码,后台连接数据库通过用户名取得密码比对一下。还是学生刚看几个视频应用下,如果有其他的写法能实现的也可以,谢谢啦
展开