0

クエリ「_latin」では、すべてのパラメーターの前に連結されています

Java コード:

        PreparedStatement prepStmt = null;
        QueryString = "SELECT FROM Student WHERE username=? AND password=? ";
        prepStmt=con.prepareStatement(QueryString);
        prepStmt.setString(1,un);
        prepStmt.setString(2,pwd);
        ResultSet rs;

        System.out.println(prepStmt);
       rs = prepStmt.executeQuery();

エラー :

java.sql.SQLException: [MySQL][ODBC 5.1 Driver][mysqld-5.5.24-log]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM Student WHERE username=_latin1'wow' AND password=_latin1'hell'' at line 1

なぜそれが起こっているのか、解決策は何ですか

これはテーブルです:

テーブル

4

1 に答える 1

0

クエリに列リストがありません。必要な列を明示的に指定するか、ワイルドカードを使用してすべてを取得する必要があります。それ以外の:

SELECT FROM Student WHERE username = ? AND password = ?

次のようなものが必要です。

SELECT * FROM Student WHERE username = ? AND password = ?

ほとんどの場合、ワイルドカード式を使用するよりも、取得する列を明示的に定義する方がよいことに注意してください。

于 2012-12-08T19:46:00.813 に答える