3
    String checkAvailable_flight = String.format("SELECT Flightid, flightdate,"
            + " origin, destination FROM flight"
            + " WHERE  Flightdate::Date = %s  AND origin = %s"
            + " AND destination = %s;", date_, origin_, destination_);

    ResultSet rs = stmt.executeQuery(checkAvailable_flight);

    if (!rs.next()) {

        System.out.println("no data inserted");
    } else {

        do {
            int flightid = rs.getInt("flightid");
            String date = rs.getString("flightdate");
            String origin = rs.getString("origin");
            String destination = rs.getString("destination");

            System.out.printf("%-10d %5s %5s %7s\n",flightid, date, origin, destination);

        } while (rs.next());
    }

エラーが発生しました:

SQLException : ERROR: operator does not exist: date = integer
  Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
  Position: 86
SQLState : 42883
SQLCode : 0

こんにちは、私は JDBC に取り組んでおり、SQL クエリを実行してテーブルを出力したいのですが、上記のエラーが発生しました..

次のように、フライトデートを別の方法でキャストしようとします。

CAST(Flightdate AS TEXT) LIKE '2013-04-12%' 

しかし、それでもエラーが発生しました....

どんな提案でも感謝します..

4

1 に答える 1