Базовый выбор JDBC работает, когда я переключаюсь на подготовленный оператор, он не работает - PullRequest
0 голосов
/ 11 июня 2019

Я использую Java 8 и Oracle.

Я подтвердил, что этот код работает:

Statement stmt = null;

String query = "select * from custref";

stmt  = con.createStatement();

ResultSet rs = stmt.executeQuery(query);
    while (rs.next()) {
         String cName = rs.getString("CUSTOMER_NAME");
         System.out.println(cName);
    }

Когда я изменяю это на это, это не дает никаких результатов:

PreparedStatement prepStmt = null;

String query = "select * from custref where CUSTOMER_NUMBER = ?";

prepStmt  = con.prepareStatement(query);
prepStmt.setString(1, "12344321");

ResultSet rs = prepStmt.executeQuery();
while (rs.next()) {
    String cName = rs.getString("CUSTOMER_NAME");

    System.out.println(cName);
}

Я подтвердил, что мой тип данных VARCHAR, следовательно, заданная строка. Я знаю, что с моими соединениями все в порядке, потому что основной поиск работает только тогда, когда я переключаюсь на параметризованный, он не завершается с ошибкой или выдает исключения, у него просто нет набора результатов. Я также попробовал соглашение: customerNumber вместо? и это тоже не сработало. Это довольно неловко, но я нахожусь здесь в конце, ничто, что я не могу найти, кажется, решает эту проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...