Доступ к таблице - SQL (Java) - PullRequest
0 голосов
/ 31 января 2012

Предположим, у меня есть таблица MYtable, как показано ниже:

ID   A     B        C
1   100  APPLE     CAKE
2   200  BANANA    PIE

Я хочу иметь возможность сохранять все эти записи таблицы в виде списка (какого-то вида) и повторять каждую запись.

Запрос будет:

select * from Mytable where ID in (1,2,3)

Итак, в списке должно быть 2 записи: запись1 должна содержать 1100, APPLE, CAKE и запись2 должна содержать 2200, BANANA, PIE

Я такжехочу иметь возможность перебирать каждую запись

Так что для record1 - я хочу получить getColumnA т.е. 100, getColumnB т.е. APPLE и т. д.

Ответы [ 3 ]

0 голосов
/ 31 января 2012

Для этого вам нужно реализовать JDBC.

После создания соединения JDBC.Выполнить запрос и извлечь записи из набора результатов.Из записи вы также можете извлечь определенные столбцы.

см. Следующий пример как работать с jdbc basic

http://www.jdbc -tutorial.com /

import java.sql.* ;

class JDBCQuery
{
 public static void main( String args[] )
 {
  try
     {
      // Load the database driver
      Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ) ;

      // Get a connection to the database
      Connection conn = DriverManager.getConnection( "jdbc:odbc:Database" ) ;

      // Print all warnings
      for( SQLWarning warn = conn.getWarnings(); warn != null; warn = warn.getNextWarning() )
         {
          System.out.println( "SQL Warning:" ) ;
          System.out.println( "State  : " + warn.getSQLState()  ) ;
          System.out.println( "Message: " + warn.getMessage()   ) ;
          System.out.println( "Error  : " + warn.getErrorCode() ) ;
         }

      // Get a statement from the connection
      Statement stmt = conn.createStatement() ;

      // Execute the query
      ResultSet rs = stmt.executeQuery( "select * from Mytable where ID in (1,2,3)" ) ;

      // Loop through the result set
      while( rs.next() )
      {
         System.out.println( rs.getString('ID') ) ;
         System.out.println( rs.getString('A') ) ;
         System.out.println( rs.getString('B') ) ;
         System.out.println( rs.getString('C') ) ;
      }

      // Close the result set, statement and the connection
      rs.close() ;
      stmt.close() ;
      conn.close() ;
     }
  catch( SQLException se )
     {
      System.out.println( "SQL Exception:" ) ;

      // Loop through the SQL Exceptions
      while( se != null )
         {
          System.out.println( "State  : " + se.getSQLState()  ) ;
          System.out.println( "Message: " + se.getMessage()   ) ;
          System.out.println( "Error  : " + se.getErrorCode() ) ;

          se = se.getNextException() ;
         }
     }
  catch( Exception e )
     {
      System.out.println( e ) ;
     }
 }
}
0 голосов
/ 31 января 2012
List<YourObject> listOfObjects = new ArrayList<YourObject>();
  while(rs.next()){
        int id = rs.getInt(1);
        int A = rs.getInt(2);
        String B= rs.getString(3);
        String C = rs.getString(4);
        YourObject ob = new YourObject (id, A, B, C);
        listOfObjects.add(ob); //now you have the list of objects .. iterate trough it
    }
0 голосов
/ 31 января 2012

Сначала вам потребуется JDBC для подключения к базе данных.

Вы можете использовать Statement или PreparedStatement для извлечения данных из базы данных изатем вы можете получить эти данные, сохраненные в ResultSet .

Теперь вы можете перебирать результаты в ResultSet.

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