## org.firebirdsql.jdbc
Class FBResultSetMetaData

    java.lang.Object
      org.firebirdsql.jdbc.FBResultSetMetaData

All Implemented Interfaces:
  ResultSetMetaData, Wrapper

    public class FBResultSetMetaData

extends Object
implements ResultSetMetaData

Implementation of `ResultSetMetaData` interface.

Version:
  1.0
Author:
  David Jencks

Constructor Summary
`protected` `FBResultSetMetaData(XSQLVAR[] xsqlvars, GDSHelper connection)` Creates a new `FBResultSetMetaData` instance.

Method Summary
`String` `getCatalogName(int column)` Gets the designated column's table's catalog name.
`String` `getColumnClassName(int column)` Returns the fully-qualified name of the Java class whose instances are manufactured if the method `ResultSet.getObject` is called to retrieve a value from the column.
`int` `getColumnCount()` Returns the number of columns in this `ResultSet` object.
`int` `getColumnDisplaySize(int column)` Indicates the designated column's normal maximum width in characters.
`String` `getColumnLabel(int column)` Gets the designated column's suggested title for use in printouts and displays.
`String` `getColumnName(int column)` Get the designated column's name.
`int` `getColumnType(int column)` Retrieves the designated column's SQL type.
`String` `getColumnTypeName(int column)` Retrieves the designated column's database-specific type name.
`int` `getPrecision(int column)` Get the designated column's number of decimal digits.
`int` `getScale(int column)` Gets the designated column's number of digits to right of the decimal point.
`String` `getSchemaName(int column)` Get the designated column's table's schema.
`String` `getSourceColumnName(int column)`
`String` `getTableName(int column)` Gets the designated column's table name.
`boolean` `isAutoIncrement(int column)` Indicates whether the designated column is automatically numbered, thus read-only.
`boolean` `isCaseSensitive(int column)` Indicates whether a column's case matters.
`boolean` `isCurrency(int column)` Indicates whether the designated column is a cash value.
`boolean` `isDefinitelyWritable(int column)` Indicates whether a write on the designated column will definitely succeed.
`int` `isNullable(int column)` Indicates the nullability of values in the designated column.
`boolean` `isReadOnly(int column)` Indicates whether the designated column is definitely not writable.
`boolean` `isSearchable(int column)` Indicates whether the designated column can be used in a where clause.
`boolean` `isSigned(int column)` Indicates whether values in the designated column are signed numbers.
`boolean` `isWrapperFor(Class arg0)`
`boolean` `isWritable(int column)` Indicates whether it is possible for a write on the designated column to succeed.
`Object` `unwrap(Class arg0)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### FBResultSetMetaData

    protected FBResultSetMetaData(XSQLVAR[] xsqlvars,
                                  GDSHelper connection)
                           throws SQLException

  Creates a new `FBResultSetMetaData` instance.

  Parameters:
    `xsqlvars` - a `XSQLVAR[]` value
    `connection` - a `AbstractConnection` value
  Throws:
    `SQLException` - if an error occurs TODO Need another constructor for metadata from constructed result set, where we supply the ext field info.

Method Detail

### getColumnCount

    public int getColumnCount()

  Returns the number of columns in this `ResultSet` object.

  Specified by:
    `getColumnCount` in interface `ResultSetMetaData`
  Returns:
    the number of columns

### isAutoIncrement

    public boolean isAutoIncrement(int column)

  Indicates whether the designated column is automatically numbered, thus read-only.

  Specified by:
    `isAutoIncrement` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise

### isCaseSensitive

    public boolean isCaseSensitive(int column)
                            throws SQLException

  Indicates whether a column's case matters.

  Specified by:
    `isCaseSensitive` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### isSearchable

    public boolean isSearchable(int column)
                         throws SQLException

  Indicates whether the designated column can be used in a where clause.

  Specified by:
    `isSearchable` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### isCurrency

    public boolean isCurrency(int column)
                       throws SQLException

  Indicates whether the designated column is a cash value.

  Specified by:
    `isCurrency` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### isNullable

    public int isNullable(int column)
                   throws SQLException

  Indicates the nullability of values in the designated column.

  Specified by:
    `isNullable` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    the nullability status of the given column; one of `columnNoNulls`, `columnNullable` or `columnNullableUnknown`
  Throws:
    `SQLException` - if a database access error occurs

### isSigned

    public boolean isSigned(int column)
                     throws SQLException

  Indicates whether values in the designated column are signed numbers.

  Specified by:
    `isSigned` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### getColumnDisplaySize

    public int getColumnDisplaySize(int column)
                             throws SQLException

  Indicates the designated column's normal maximum width in characters.

  Specified by:
    `getColumnDisplaySize` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    the normal maximum number of characters allowed as the width of the designated column
  Throws:
    `SQLException` - if a database access error occurs

### getColumnLabel

    public String getColumnLabel(int column)
                          throws SQLException

  Gets the designated column's suggested title for use in printouts and displays.

  Specified by:
    `getColumnLabel` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    the suggested column title
  Throws:
    `SQLException` - if a database access error occurs

### getColumnName

    public String getColumnName(int column)
                         throws SQLException

  Get the designated column's name.

  Specified by:
    `getColumnName` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    column name
  Throws:
    `SQLException` - if a database access error occurs

### getSourceColumnName

    public String getSourceColumnName(int column)
                               throws SQLException

  Throws:
    `SQLException`

### getSchemaName

    public String getSchemaName(int column)
                         throws SQLException

  Get the designated column's table's schema.

  Specified by:
    `getSchemaName` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    schema name or "" if not applicable
  Throws:
    `SQLException` - if a database access error occurs

### getPrecision

    public int getPrecision(int column)
                     throws SQLException

  Get the designated column's number of decimal digits.

  Specified by:
    `getPrecision` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    precision
  Throws:
    `SQLException` - if a database access error occurs

### getScale

    public int getScale(int column)
                 throws SQLException

  Gets the designated column's number of digits to right of the decimal point.

  Specified by:
    `getScale` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    scale
  Throws:
    `SQLException` - if a database access error occurs

### getTableName

    public String getTableName(int column)
                        throws SQLException

  Gets the designated column's table name.

  Specified by:
    `getTableName` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    table name or "" if not applicable
  Throws:
    `SQLException` - if a database access error occurs

### getCatalogName

    public String getCatalogName(int column)
                          throws SQLException

  Gets the designated column's table's catalog name.

  Specified by:
    `getCatalogName` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    column name or "" if not applicable
  Throws:
    `SQLException` - if a database access error occurs

### getColumnType

    public int getColumnType(int column)
                      throws SQLException

  Retrieves the designated column's SQL type.

  Specified by:
    `getColumnType` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    SQL type from java.sql.Types
  Throws:
    `SQLException` - if a database access error occurs
  See Also:
    `Types`

### getColumnTypeName

    public String getColumnTypeName(int column)
                             throws SQLException

  Retrieves the designated column's database-specific type name.

  Specified by:
    `getColumnTypeName` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    type name used by the database. If the column type is a user-defined type, then a fully-qualified type name is returned.
  Throws:
    `SQLException` - if a database access error occurs

### isReadOnly

    public boolean isReadOnly(int column)
                       throws SQLException

  Indicates whether the designated column is definitely not writable.

  Specified by:
    `isReadOnly` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### isWritable

    public boolean isWritable(int column)
                       throws SQLException

  Indicates whether it is possible for a write on the designated column to succeed.

  Specified by:
    `isWritable` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### isDefinitelyWritable

    public boolean isDefinitelyWritable(int column)
                                 throws SQLException

  Indicates whether a write on the designated column will definitely succeed.

  Specified by:
    `isDefinitelyWritable` in interface `ResultSetMetaData`
  Parameters:
    `column` - the first column is 1, the second is 2, ...
  Returns:
    `true` if so; `false` otherwise
  Throws:
    `SQLException` - if a database access error occurs

### getColumnClassName

    public String getColumnClassName(int column)
                              throws SQLException

  Returns the fully-qualified name of the Java class whose instances are manufactured if the method `ResultSet.getObject` is called to retrieve a value from the column. `ResultSet.getObject` may return a subclass of the class returned by this method.

  Specified by:
    `getColumnClassName` in interface `ResultSetMetaData`
  Returns:
    the fully-qualified name of the class in the Java programming language that would be used by the method `ResultSet.getObject` to retrieve the value in the specified column. This is the class name used for custom mapping.
  Throws:
    `SQLException` - if a database access error occurs
  Since:
    1.2
  See Also:
    What Is in the JDBC 2.0 API

### isWrapperFor

    public boolean isWrapperFor(Class arg0)
                         throws SQLException

  Specified by:
    `isWrapperFor` in interface `Wrapper`
  Throws:
    `SQLException`

### unwrap

    public Object unwrap(Class arg0)
                  throws SQLException

  Specified by:
    `unwrap` in interface `Wrapper`
  Throws:
    `SQLException`

Copyright © 2001-2010. All Rights Reserved.