public Collection<Map<String, Object>> listColumnsDetails(String table)
	    throws SQLException {
	Collection<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
	ResultSet rs = null;
	DatabaseMetaData dbm = connection.getMetaData();
	rs = dbm.getColumns(null, null, table, null);
	while (rs.next()) {
	    Map<String, Object> resMap = new HashMap<String, Object>();

	    resMap.put("COLUMN_NAME", rs.getString("COLUMN_NAME"));
	    resMap.put("DATA_TYPE", rs.getInt("DATA_TYPE"));
	    resMap.put("COLUMN_DEF", rs.getString("COLUMN_DEF"));

	    // System.out.println(rs.getString("COLUMN_NAME")+" type: "+rs.getInt("DATA_TYPE")+" with "+rs.getString("COLUMN_DEF"));

	    result.add(resMap);
	}
	if (rs != null) {
	    rs.close();
	}
	return result;
    }
public Collection < Map < String , Object > > listColumnsDetails ( String table ) throws SQLException { Collection < Map < String , Object > > result = new ArrayList < Map < String , Object > > ( ) ; ResultSet rs = null ; DatabaseMetaData dbm = connection . getMetaData ( ) ; rs = dbm . getColumns ( null , null , table , null ) ; while ( rs . next ( ) ) { Map < String , Object > resMap = new HashMap < String , Object > ( ) ; resMap . put ( "COLUMN_NAME" , rs . getString ( "COLUMN_NAME" ) ) ; resMap . put ( "DATA_TYPE" , rs . getInt ( "DATA_TYPE" ) ) ; resMap . put ( "COLUMN_DEF" , rs . getString ( "COLUMN_DEF" ) ) ; result . add ( resMap ) ; } if ( rs != null ) { rs . close ( ) ; } return result ; }
Get a list of all of the columns w/ additional infos on a table.

@param table
The table to check.
@return A list of all of the columns.
@throws DatabaseException
If a database error occurs.