0

有人可以帮助我吗?

我有一个jsp页面。因为我想从用户名匹配的数据库中获取数据。我尝试过这个。但无法获得输出。这是代码。请帮我。所有数据库连接都正常。错误显示在“WHERE”中。它说 SQL 语法不正确

<html>
   .....
<body>
 <%
      //table name is "register" have Name and Username filed.
      String uname=request.getParameter("username");
      String sql;
      sql="SELECT * FROM register WHERE Username="+uname+"";
      ResultSet rs=stmt.executeQuery(sql);
      while(rs.next())
                    {
      %>          

   NAME: <%=rs.getString(1)%> 
   USERNAME: <%=rs.getString(2)%> 

       <%        
                }
         %> 

   </body>
</html>
4

2 回答 2

0

尝试

 sql="SELECT * FROM register WHERE Username= '"+uname+"'";

您可能还需要考虑首先在您的数据库控制台中运行查询来解决这样的问题。

于 2013-02-05T16:19:31.283 回答
0

查询没有问题。

要检查这一点,请转到您正在使用的 mysql 工具或命令提示符

通过热编码某些值来使用相同的语法,例如

SELECT * FROM databasename.register WHERE Username="vector" 。如果它有效,那么

例外可能是由于其他三个原因

查看

  1. 数据库名称
  2. 表名
  3. 字段名称

如果它不起作用,请告诉我。

于 2013-02-06T05:49:02.703 回答