Resultset gets all values

How can I get all values ​​from all columns?

Ive tried with this code:

values.add(rs.getString(number)); 

Where the number is a string.

But it gives me only all the values ​​from the last column.

I need to grab the values ​​from each column and then add it to the arraylist.

This is my complete code:

  // The column count starts from 1 int number = 0; for ( i = 1; i < columnCount + 1; i++ ) { number++; ColumnNames = rsmd.getColumnName(i); ar.add(ColumnNames); System.out.println(ar); } model.setColumnCount(columnCount); while ( rs.next() ) { // values.add(rs.getString(ar.indexOf(i))); values.add(rs.getString(number)); System.out.println(values); model.addRow(new Object[] {value1, value2, value3, value4}); } 
+7
java sql sqlite resultset
source share
2 answers

For each rs.next() :

 Object[] row = new Object[columnCount]; for (int i = 1; i <= columnCount; ++i) { row[i - 1] = rs.getString(i); // Or even rs.getObject() } model.addRow(row); 
+6
source share

ResultsetMetaData also contains your column. The following snippet will populate an array of objects for each column in the result set.

The API document is your friend: http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html http://docs.oracle.com/javase/7/docs/api/java /sql/ResultSetMetaData.html

 ResultSet resultSet = getResultSetFromSomewhere(); ResultSetMetaData resultSetMetaData = resultSet.getMetaData(); int columnCount = resultSetMetaData.getColumnCount(); while (resultSet.next()) { Object[] values = new Object[columnCount]; for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) { values[i - 1] = resultSet.getObject(i); } model.addRow(values); } 
+11
source share

All Articles