Я проверяю очень простой Java веб-приложение doGet() метод со следующим кодом:Java ResultSet отображаются в обратном порядке
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
try
{
Class.forName("oracle.jdbc.OracleDriver");
}
catch(ClassNotFoundException ex)
{
System.out.println(ex);
}
String sql_qrp="select * from HR.EMP_MGMT";
try
{
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521/XE","HR","HR");
try(Statement stm=con.createStatement())
{
ResultSet rs=stm.executeQuery(sql_qrp);
while(rs.next())
{
int emp_ID=rs.getInt("EMP_ID");
String name=rs.getString("NAME");
String address=rs.getString("ADDRESS");
int tel=rs.getInt("TEL");
String email=rs.getString("EMAIL");
System.out.println(emp_ID+", "+name+", "+address+", "+tel+", "+email);
}
}
}
catch (SQLException ex) {
Logger.getLogger(Add_Employee.class.getName()).log(Level.SEVERE, null, ex);
}
}
Он также подключается к БД Oracle и извлекает все 3 строки из таблицы, указанной в код, НО В РЕВЕРСОМ ЗАКАЗЕ. Я уже не пытался добиться успеха FETCH_FORWARD. Таким образом, он взял записи, такие как: ID 3., 2., 1. а не ID 1., 2., 3.
Я бы рекомендовал использовать 'ORDER BY' в вашем SQL. Порядок строк не определяется при отсутствии «ORDER BY». –