Почему встроенная база данных Derby не принимает бинарные операторы с датой? - PullRequest
0 голосов
/ 30 мая 2018

Я использую встроенную базу данных derby в программе на Java.Мой запрос к базе данных:

"SELECT ID, NAME, MOBILE_NUMBER FROM CLIENTS2 WHERE CONTRACT_DATE <= ? AND BUILDING_ID = "+buildingId 

И я устанавливаю дату с помощью подготовленного заявления:

try {
            PreparedStatement pStmt = con.prepareStatement(query);
            pStmt.setDate(1, endSqlDate);
            try (ResultSet rs = pStmt.executeQuery()) {
                while(rs.next()){
                    FinancialInfoModule financialInfoObj = new FinancialInfoModule();

                    financialInfoObj.setClientId(rs.getInt("ID"));
                    financialInfoObj.setMobileNumber(rs.getInt("MOBILE_NUMBER"));
                    financialInfoObj.setClientName(rs.getString("NAME"));
                    getClientFinancialInfo(financialInfoObj, startSqlDate,
                            endSqlDate);

                    if(financialInfoObj.isMeetingTheNeed()){
                        financialInfoList.add(financialInfoObj);
                    }
                }
            }
        } catch (SQLException ex) {
            Logger.getLogger(ReportsUtility.class.getName())
                    .log(Level.SEVERE, null, ex);
        }

Но каждый раз, когда я получаю эту ошибку:

java.sql.SQLSyntaxErrorException: синтаксическая ошибка: обнаружена «WHERE» в строке 1, столбец 61. в org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException (неизвестный источник) в org.apache.derby.impl.jdbc.Util.generateCsSQLException (Неизвестный источник) в org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException (Неизвестный источник) в org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException (Неизвестный источник) в org.ap.jdbc.EmbedConnection.handleException (Неизвестный источник) в org.apache.derby.impl.jdbc.ConnectionChild.handleException (Неизвестный источник) в org.apache.derby.impl.jdbc.EmbedPreparedStatement. (Неизвестный источник)

Кто-нибудь имеет представление о том, что происходит?

...