недавно начал работать с базой данных Oracle с Java и ResultSet, и таблица Я хочу запроса имеет следующую структуру столбца:Read VARCHAR2 из Oracle Database с ResultSet
USU_PASSWORD VARCHAR2(30 BYTE) NOT NULL
Проблема что я имею с моим код состоит в том, что этот столбец уже зашифрован с помощью алгоритма DES, мои запросы на вставку, обновление и удаление работают как шарм, но когда я хочу запросить, чтобы найти строку с некоторым значением в этом столбце, атрибут «next» на ResultSet подходит к нулю.
Когда я пытаюсь принимать значения от ResultSet, она даже и не попасть в то время как заявление
while(resultSet.next(){ //Does not enter here, and the next property is null }
Некоторую помощь может быть приятно
Regard
добавить свой код ниже
Sesion sesion = null;
ResultSet rs = null;
try{
rs = executePreparedStatement(LOGIN_PREPARED_STATEMENT, new String[]{nombreUsuario, pass});
while(rs.next()){
sesion = new Sesion();
sesion.setCarCveElectoral(rs.getString("CAR_CVE_ELECTORAL"));
sesion.setCarEstCve(rs.getString("CAR_EST_CVE"));
sesion.setCarFechaInicio(rs.getDate("CAR_FECHA_INICIO"));
sesion.setCarFechaTermino(rs.getDate("CAR_FECHA_TERMINO"));
sesion.setCarPlzCve(rs.getString("CAR_PLZ_CVE"));
sesion.setCarPreCve(rs.getString("CAR_PRE_CVE"));
sesion.setCarPstCve(rs.getString("CAR_PST_CVE"));
}
return sesion;
}catch(Exception ex){
}
Где код функции executePreparedStatement равен
ResultSet rs = null;
PreparedStatement ps = null;
try{
if(this.connection == null){
if(getConnection()){
ps = this.connection.prepareStatement(stmnt);
for(int i = 0; i < params.length; i ++)
ps.setString(i, params[i]);
rs = ps.executeQuery();
}else{
System.out.println("No se pudo conectar a la base de datos");
}
}else{
ps = this.connection.prepareStatement(stmnt);
for(int i = 0; i < params.length; i ++)
ps.setString(i + 1, params[i]);
rs = ps.executeQuery();
}
}catch(SQLException ex){
System.out.println("Ha ocurrido un error: " + ex.getMessage());
}
return rs;
И LOGIN_PREPARED_STATEMENT Строка
«выберите * от где USU_NOMBRE Новичок =? И USU_PASSWORD =?»
попробуйте использовать PreparedStatement для выполнения запросов, если вы используете JDBC http://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html –
Является ли ваш результирующий набор возвратом только по одной записи каждый раз? –
Я уже пробовал с PreparedStatement и то же самое, самое странное, что ResultSet ДОЛЖЕН возвращать только одну строку, уже проверен, но это не так, я также читаю о VARCHAR2 с Oracle, похоже, что у него есть некоторые проблемы, чтобы прочитать его как String – AlbertoRuvel