public class FBResultSetMetaData extends AbstractFieldMetaData implements FirebirdResultSetMetaData
ResultSet
object.AbstractFieldMetaData.ExtendedFieldInfo, AbstractFieldMetaData.FieldKey
Modifier | Constructor and Description |
---|---|
protected |
FBResultSetMetaData(RowDescriptor rowDescriptor,
FBConnection connection)
Creates a new
FBResultSetMetaData instance. |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getCatalogName(int column) |
java.lang.String |
getColumnClassName(int column) |
int |
getColumnCount() |
int |
getColumnDisplaySize(int column) |
java.lang.String |
getColumnLabel(int column) |
java.lang.String |
getColumnName(int column) |
int |
getColumnType(int column) |
java.lang.String |
getColumnTypeName(int column) |
protected java.util.Map<AbstractFieldMetaData.FieldKey,AbstractFieldMetaData.ExtendedFieldInfo> |
getExtendedFieldInfo(FBConnection connection)
This method retrieves extended information from the system tables in
a database.
|
int |
getPrecision(int column) |
int |
getScale(int column) |
java.lang.String |
getSchemaName(int column) |
java.lang.String |
getTableAlias(int column)
Gets the designated column's table alias.
|
java.lang.String |
getTableName(int column) |
boolean |
isAutoIncrement(int column) |
boolean |
isCaseSensitive(int column) |
boolean |
isCurrency(int column) |
boolean |
isDefinitelyWritable(int column) |
int |
isNullable(int column) |
boolean |
isReadOnly(int column) |
boolean |
isSearchable(int column) |
boolean |
isSigned(int column) |
boolean |
isWritable(int column) |
estimateFixedPrecision, getExtFieldInfo, getFieldClassName, getFieldCount, getFieldDescriptor, getFieldType, getFieldTypeName, getPrecisionInternal, getRowDescriptor, getScaleInternal, isSignedInternal, isWrapperFor, unwrap
protected FBResultSetMetaData(RowDescriptor rowDescriptor, FBConnection connection) throws java.sql.SQLException
FBResultSetMetaData
instance.rowDescriptor
- a row descriptorconnection
- a FBConnection
valuejava.sql.SQLException
- if an error occurs
TODO Need another constructor for metadata from constructed
result set, where we supply the ext field info.public int getColumnCount() throws java.sql.SQLException
getColumnCount
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isAutoIncrement(int column) throws java.sql.SQLException
The current implementation always returns false
.
isAutoIncrement
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isCaseSensitive(int column) throws java.sql.SQLException
The current implementation always returns true
.
isCaseSensitive
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isSearchable(int column) throws java.sql.SQLException
isSearchable
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isCurrency(int column) throws java.sql.SQLException
isCurrency
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public int isNullable(int column) throws java.sql.SQLException
isNullable
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isSigned(int column) throws java.sql.SQLException
isSigned
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public int getColumnDisplaySize(int column) throws java.sql.SQLException
getColumnDisplaySize
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getColumnLabel(int column) throws java.sql.SQLException
getColumnLabel
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getColumnName(int column) throws java.sql.SQLException
getColumnName
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getSchemaName(int column) throws java.sql.SQLException
getSchemaName
in interface java.sql.ResultSetMetaData
""
as schemas are not supported.java.sql.SQLException
public int getPrecision(int column) throws java.sql.SQLException
NOTE For NUMERIC
and DECIMAL
we attempt to retrieve the exact precision from the
metadata, if this is not possible (eg the column is dynamically defined in the query), the reported precision is
the maximum precision allowed by the underlying storage data type.
getPrecision
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public int getScale(int column) throws java.sql.SQLException
getScale
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getTableName(int column) throws java.sql.SQLException
getTableName
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getTableAlias(int column) throws java.sql.SQLException
FirebirdResultSetMetaData
getTableAlias
in interface FirebirdResultSetMetaData
column
- the first column is 1, the second is 2, ...java.sql.SQLException
- if a database access error occurspublic java.lang.String getCatalogName(int column) throws java.sql.SQLException
getCatalogName
in interface java.sql.ResultSetMetaData
""
as catalogs are not supportedjava.sql.SQLException
public int getColumnType(int column) throws java.sql.SQLException
getColumnType
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getColumnTypeName(int column) throws java.sql.SQLException
getColumnTypeName
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isReadOnly(int column) throws java.sql.SQLException
The current implementation always returns false
, except for a DB_KEY column.
isReadOnly
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isWritable(int column) throws java.sql.SQLException
The current implementation always returns true
, except for a DB_KEY column.
isWritable
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public boolean isDefinitelyWritable(int column) throws java.sql.SQLException
isDefinitelyWritable
in interface java.sql.ResultSetMetaData
java.sql.SQLException
public java.lang.String getColumnClassName(int column) throws java.sql.SQLException
getColumnClassName
in interface java.sql.ResultSetMetaData
java.sql.SQLException
protected java.util.Map<AbstractFieldMetaData.FieldKey,AbstractFieldMetaData.ExtendedFieldInfo> getExtendedFieldInfo(FBConnection connection) throws java.sql.SQLException
AbstractFieldMetaData
getExtendedFieldInfo
in class AbstractFieldMetaData
AbstractFieldMetaData.FieldKey
instances and AbstractFieldMetaData.ExtendedFieldInfo
instances,
or an empty Map if the metadata implementation does not support extended info.java.sql.SQLException
- if a database error occurs while obtaining extended field information.Copyright © 2001-2022 Jaybird (Firebird JDBC/JCA) team. All rights reserved.