У меня следующая проблема.У меня есть метод, который использует запрос, чтобы проверить, есть ли резервирование для данного места во времени от начала до конца, чтобы проверить, может ли пользователь забронировать это место в данное время, а затем возвращает Ture of False.Моя проблема в том, что каждый раз, когда мой ResultSet равен нулю.Я делаю шаг за шагом отладку, и все переменные передаются правильно.С помощью отладчика я обнаружил, что после передачи 4 аргументов (дата начала 2-го раза) пятый пропускается, а значение myRs остается нулевым.Кроме того, четвертый аргумент после прохождения подчеркивается зеленой линией, но связь не отображается.Я использую Netbeans.Я понятия не имею, что происходит.Вот мой код метода DBUtil:
public boolean doesBookExist(int number, Date start, Date end) throws Exception {
boolean result = false;
Connection myConn = null;
PreparedStatement myStmt = null;
ResultSet myRs = null;
try {
// get a connection
myConn = dataSource.getConnection();
// create sql for validation
String sqlValidate = "SELECT * FROM `rezerwacje_miejsc`"
+ " WHERE `NR_MIEJSCA`=?"
+ " AND (`START` BETWEEN ? AND ?"
+ " OR KONIEC` BETWEEN ? AND ?)";
myStmt = myConn.prepareStatement(sqlValidate);
myStmt.setInt(1, number);
myStmt.setDate(2, new java.sql.Date(start.getTime()));
myStmt.setDate(3, new java.sql.Date(end.getTime()));
myStmt.setDate(4, new java.sql.Date(start.getTime()));
myStmt.setDate(5, new java.sql.Date(end.getTime()));
// execute query
myRs = myStmt.executeQuery(sqlValidate);
// check if there was a match
result = myRs.next();
return result;
} finally {
// close JDBC objects
close(myConn, myStmt, myRs);
}