所以我有一個表,我有保留的數據庫。 在Java中,我只想顯示今天和以後的預訂。檢查日期數據庫更大然後今天
PreparedStatement statement = con.prepareStatement(
"SELECT reservatieID,klanten.voornaam,klanten.achternaam,kamerID,startDatum,eindDatum "
+ "FROM reservatie "
+ "INNER JOIN klanten ON reservatie.klantID = klanten.klantID"
+ "WHERE eindDatum =>?");
String now = basisLogin.getDate();
statement.setString(1, now);
ResultSet resultSet = statement.executeQuery();
所以這是我的代碼。今天的日期的字符串格式爲:YYYY-MM-DD
這是錯誤我得到:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have anerror in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'eindDatum >'2017-03-07'' at line 1
java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
我在做什麼錯?
你想用'的PreparedStatament#setDate'代替'PreparedStatament#setString',並通過在java的' .sql.Date'的值,通過轉換你的'String'值。 – GriffeyDog
您需要傳遞一個Date對象而不是String對象。 – reos
操作是'> =','不=>',和你錯過了之前'WHERE'的空間。 – Andreas