Package org.springframework.jdbc.support.rowset

# Interface SqlRowSetMetaData

All Known Implementing Classes:
  `ResultSetWrappingSqlRowSetMetaData`

public interface SqlRowSetMetaData
Metadata interface for Spring's `SqlRowSet`, analogous to JDBC's `ResultSetMetaData`.

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

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

## Method Summary

Modifier and Type
Method
Description
`String`
`getCatalogName(int columnIndex)`
Retrieve the catalog name of the table that served as the source for the specified column.
`String`
`getColumnClassName(int columnIndex)`
Retrieve the fully qualified class that the specified column will be mapped to.
`int`
`getColumnCount()`
Retrieve the number of columns in the RowSet.
`int`
`getColumnDisplaySize(int columnIndex)`
Retrieve 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)`
Retrieve the DBMS-specific type name for the indicated column.
`int`
`getPrecision(int columnIndex)`
Retrieve the precision for the indicated column.
`int`
`getScale(int columnIndex)`
Retrieve the scale of the indicated column.
`String`
`getSchemaName(int columnIndex)`
Retrieve the schema name of the table that served as the source for the specified column.
`String`
`getTableName(int columnIndex)`
Retrieve the name of the table that served as the source for the specified column.
`boolean`
`isCaseSensitive(int columnIndex)`
Indicate whether the case of the designated column is significant.
`boolean`
`isCurrency(int columnIndex)`
Indicate whether the designated column contains a currency value.
`boolean`
`isSigned(int columnIndex)`
Indicate whether the designated column contains a signed number.

## Method Details

### getCatalogName

String getCatalogName(int columnIndex) throws InvalidResultSetAccessException
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Retrieve 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
Indicate whether the case of the designated column is significant.

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

### isCurrency

boolean isCurrency(int columnIndex) throws InvalidResultSetAccessException
Indicate 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
Indicate 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)`