Kod:
public int myMethod(String day) throws SQLException{
String sql = "Select count(*) from MyTable WHERE someColumn = ? ";
Connection connection = ConnFactory.get();
PreparedStatement prepareStatement = null;
ResultSet resultSet = null;
int ret = -1;
try{
prepareStatement = connection.prepareStatement(sql);
prepareStatement.setString(1, day);
resultSet = prepareStatement.executeQuery(sql);
if(resultSet.next()){
ret = resultSet.getInt(1);
}
}
catch(SQLException sqle){
// closing statement & ResultSet, log and throw exception
}
finally{
// closing statement & ResultSet
}
ConnFactory.kill(connection);
return ret;
}
Wynik wywołania 0. Prawidłowy wynik około 100. Jeżeli usunę klauzulę WHERE to zaczyna zwracać prawidłowe wyniki. Czy ktoś może mi powiedzieć dlaczego się tak dzieje?