org.springframework.jdbc.support.rowset

## Interface SqlRowSetMetaData

All Known Implementing Classes:
  ResultSetWrappingSqlRowSetMetaData

    public interface SqlRowSetMetaData

Meta data interface for Spring's SqlRowSet, analogous to `javax.sql.ResultSetMetaData`

The main difference to the standard JDBC RowSetMetaData is that an SQLException is never thrown here. This allows a SqlRowSetMetaData to be used without having to deal with checked exceptions. A SqlRowSetMetaData will throw Spring's `org.springframework.jdbc.InvalidResultSetAccessException` instead (when appropriate).

Since:
  1.2
Author:
  Thomas Risberg
See Also:
  `SqlRowSet.getMetaData()`, `ResultSetMetaData`, `InvalidResultSetAccessException`

### Method Summary

Methods
`String` `getCatalogName(int columnIndex)` Retrieves the catalog name of the table that served as the source for the specified column.
`String` `getColumnClassName(int columnIndex)` Retrieves the fully qualified class that the specified column will be mapped to.
`int` `getColumnCount()` Retrives the number of columns in the RowSet.
`int` `getColumnDisplaySize(int columnIndex)` Retrieves the maximum width of the designated column.
`String` `getColumnLabel(int columnIndex)` Retrieve the suggested column title for the column specified.
`String` `getColumnName(int columnIndex)` Retrieve the column name for the indicated column.
`String[]` `getColumnNames()` Return the column names of the table that the result set represents.
`int` `getColumnType(int columnIndex)` Retrieve the SQL type code for the indicated column.
`String` `getColumnTypeName(int columnIndex)` Retrieves the DBMS-specific type name for the indicated column.
`int` `getPrecision(int columnIndex)` Retrieves the precision for the indicated column.
`int` `getScale(int columnIndex)` Retrieves the scale of the indicated column.
`String` `getSchemaName(int columnIndex)` Retrieves the schema name of the table that served as the source for the specified column.
`String` `getTableName(int columnIndex)` Retrieves the name of the table that served as the source for the specified column.
`boolean` `isCaseSensitive(int columnIndex)` Indicates whether the case of the designated column is significant.
`boolean` `isCurrency(int columnIndex)` Indicates whether the designated column contains a currency value.
`boolean` `isSigned(int columnIndex)` Indicates whether the designated column contains a signed number.

### Method Detail

#### getCatalogName

    String getCatalogName(int columnIndex)
                          throws InvalidResultSetAccessException

Retrieves the catalog name of the table that served as the source for the specified column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the catalog name
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getCatalogName(int)`

#### getColumnClassName

    String getColumnClassName(int columnIndex)
                              throws InvalidResultSetAccessException

Retrieves the fully qualified class that the specified column will be mapped to.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the class name as a String
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnClassName(int)`

#### getColumnCount

    int getColumnCount()
                       throws InvalidResultSetAccessException

Retrives the number of columns in the RowSet.

Returns:
  the number of columns
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnCount()`

#### getColumnNames

    String[] getColumnNames()
                            throws InvalidResultSetAccessException

Return the column names of the table that the result set represents.

Returns:
  the column names
Throws:
  `InvalidResultSetAccessException`

#### getColumnDisplaySize

    int getColumnDisplaySize(int columnIndex)
                             throws InvalidResultSetAccessException

Retrieves the maximum width of the designated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the width of the column
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnDisplaySize(int)`

#### getColumnLabel

    String getColumnLabel(int columnIndex)
                          throws InvalidResultSetAccessException

Retrieve the suggested column title for the column specified.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the column title
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnLabel(int)`

#### getColumnName

    String getColumnName(int columnIndex)
                         throws InvalidResultSetAccessException

Retrieve the column name for the indicated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the column name
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnName(int)`

#### getColumnType

    int getColumnType(int columnIndex)
                      throws InvalidResultSetAccessException

Retrieve the SQL type code for the indicated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the SQL type code
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnType(int)`, `Types`

#### getColumnTypeName

    String getColumnTypeName(int columnIndex)
                             throws InvalidResultSetAccessException

Retrieves the DBMS-specific type name for the indicated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the type name
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getColumnTypeName(int)`

#### getPrecision

    int getPrecision(int columnIndex)
                     throws InvalidResultSetAccessException

Retrieves the precision for the indicated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the precision
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getPrecision(int)`

#### getScale

    int getScale(int columnIndex)
                 throws InvalidResultSetAccessException

Retrieves the scale of the indicated column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the scale
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getScale(int)`

#### getSchemaName

    String getSchemaName(int columnIndex)
                         throws InvalidResultSetAccessException

Retrieves the schema name of the table that served as the source for the specified column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the schema name
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getSchemaName(int)`

#### getTableName

    String getTableName(int columnIndex)
                        throws InvalidResultSetAccessException

Retrieves the name of the table that served as the source for the specified column.

Parameters:
  `columnIndex` - the index of the column
Returns:
  the name of the table
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.getTableName(int)`

#### isCaseSensitive

    boolean isCaseSensitive(int columnIndex)
                            throws InvalidResultSetAccessException

Indicates whether the case of the designated column is significant.

Parameters:
  `columnIndex` - the index of the column
Returns:
  true if the case sensitive, false otherwise
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.isCaseSensitive(int)`

#### isCurrency

    boolean isCurrency(int columnIndex)
                       throws InvalidResultSetAccessException

Indicates whether the designated column contains a currency value.

Parameters:
  `columnIndex` - the index of the column
Returns:
  true if the value is a currency value, false otherwise
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.isCurrency(int)`

#### isSigned

    boolean isSigned(int columnIndex)
                     throws InvalidResultSetAccessException

Indicates whether the designated column contains a signed number.

Parameters:
  `columnIndex` - the index of the column
Returns:
  true if the column contains a signed number, false otherwise
Throws:
  `InvalidResultSetAccessException`
See Also:
  `ResultSetMetaData.isSigned(int)`