0

誰かが私を助けることができますか?

私はjspページを持っています。その中で、ユーザー名が一致するデータベースからデータを取得したいと考えています。私はそれを試してみました。しかし、出力を取得できません。これがコードです。私を助けてください。すべてのデータベース接続は問題ありません。エラーは「WHERE」に表示されます。ITは間違った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

クエリに問題はありません。

これを確認するには、使用している mysql ツールまたはコマンド プロンプトに移動します。

次のような値をホットコーディングして、同じ構文を使用します。

SELECT * FROM databasename.register WHERE Username="vector" . それが機能する場合

例外は、他の 3 つの理由による可能性があります

小切手

  1. データベース名
  2. テーブル名
  3. フィールド名

それでもうまくいかない場合は教えてください。

于 2013-02-06T05:49:02.703 に答える
0

試す

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

このようなことを解決するために、最初に db コンソールでクエリを実行することを検討することもできます。

于 2013-02-05T16:19:31.283 に答える