Вставка данных из Select в список

Я создаю оператор SQL для поиска свободных RouteId из таблицы, сравнивая забронированные идентификаторы со списком идентификаторов в таблице маршрутов.

То, что я хочу сделать, это как в нижней части предоставленного кода, создать оператор if, в котором говорится, что все маршруты свободны, а затем поместить все эти RouteId в список.

Я могу сделать все остальное оттуда, но как мне получить свободные маршруты из оператора select в список, чтобы я мог рандомизировать его?

Это вообще возможно?

 //<editor-fold defaultstate="collapsed" desc="To select all free routes">
           try {
               Class.forName("oracle.jdbc.driver.OracleDriver");
               //load the oracle driver...needs to be in classes folder in jre folder
           } catch (ClassNotFoundException e) {
               System.out.println(
                       " Can't find class oracle.jdbc.driver.OracleDriver");
               System.exit(1);
           }

       Connection conn3 = null;
       //new connection object
       Statement stmtFreeR = null;
       //new statemnt object
       ResultSet freeRoute = null;
       //new record set object
       try {
           conn3 = DriverManager.getConnection("jdbc:oracle:thin:@oracle.staff.ittralee.ie:1521:orcl",
                   "*", "7*");
           stmtFreeR = conn3.createStatement();
           // create the statement for this connection
           //</editor-fold>

           freeRoute = stmtFreeR.executeQuery(
           "SELECT r.RouteID FROM Route r WHERE RouteID NOT IN(SELECT b.RouteId FROM Booking b)");
           // get the results of select query and store in recordset object
           while (freeRoute.next()) {
               // move to first/next record of recordset
               JOptionPane.showMessageDialog(null, " the answer is " + freeRoute.getString(1));
               // output next record using string format
           }
           //<editor-fold defaultstate="collapsed" desc="Error handling for Select Statement">
           freeRoute.close();
           freeRoute = null;
           stmtFreeR.close();
           stmtFreeR = null;
           conn3.close();
           conn3 = null;

       } catch (SQLException e) {
           System.out.println(" A SQL error: " + e.getMessage());

       } finally {
           if (freeRoute != null) {
               try {
                   freeRoute.close();
               } catch (SQLException ignore) {
               }
           }

           if (stmtFreeR != null) {
               try {
                   stmtFreeR.close();
               } catch (SQLException ignore) {
               }
           }

           if (conn3 != null) {
               try {
                   conn3.close();
               } catch (SQLException ignore) {
               }
           }
       }

      // </editor-fold>

       if( /*freeRoute*/ != null) {

           //insert all routes into a list

           //Randomize the list

           //Return random route called RX


       }

person user1081326    schedule 13.03.2012    source источник
comment
Ваш пароль показывает ... и информацию о подключении.   -  person cheeken    schedule 13.03.2012
comment
Вы после чего-то вроде этого? stackoverflow.com/questions/642249/   -  person derdc    schedule 13.03.2012
comment
Действительно так, да что-то очень похожее спасибо   -  person user1081326    schedule 13.03.2012