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)
Gets the designated column's table's catalog name.
|
java.lang.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.
|
java.lang.String |
getColumnLabel(int column)
Gets the designated column's suggested title for use in printouts and
displays.
|
java.lang.String |
getColumnName(int column)
Get the designated column's name.
|
int |
getColumnType(int column)
Retrieves the designated column's SQL type.
|
java.lang.String |
getColumnTypeName(int column)
Retrieves the designated column's database-specific type name.
|
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)
Get the designated column's specified column size.
|
int |
getScale(int column)
Gets the designated column's number of digits to right of the decimal point.
|
java.lang.String |
getSchemaName(int column)
Get the designated column's table's schema.
|
java.lang.String |
getTableAlias(int column)
Gets the designated column's table alias.
|
java.lang.String |
getTableName(int column)
Gets the designated column's table name.
|
boolean |
isAutoIncrement(int column)
Indicates whether the designated column is automatically numbered.
|
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 |
isWritable(int column)
Indicates whether it is possible for a write on the designated column to succeed.
|
estimateFixedPrecision, getExtFieldInfo, getFieldClassName, getFieldCount, getFieldDescriptor, getFieldType, getFieldTypeName, getPrecisionInternal, getRowDescriptor, getScaleInternal, isSignedInternal, isWrapperFor, unwrapprotected 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
ResultSet object.getColumnCount in interface java.sql.ResultSetMetaDatajava.sql.SQLException - if a database access error occurspublic boolean isAutoIncrement(int column)
throws java.sql.SQLException
The current implementation always returns false.
isAutoIncrement in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic boolean isCaseSensitive(int column)
throws java.sql.SQLException
The current implementation always returns true.
isCaseSensitive in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic boolean isSearchable(int column)
throws java.sql.SQLException
isSearchable in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic boolean isCurrency(int column)
throws java.sql.SQLException
isCurrency in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic int isNullable(int column)
throws java.sql.SQLException
isNullable in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...columnNoNulls,
columnNullable or columnNullableUnknownjava.sql.SQLException - if a database access error occurspublic boolean isSigned(int column)
throws java.sql.SQLException
isSigned in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic int getColumnDisplaySize(int column)
throws java.sql.SQLException
getColumnDisplaySize in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic java.lang.String getColumnLabel(int column)
throws java.sql.SQLException
AS
clause. If a SQL AS is not specified, the value returned from
getColumnLabel will be the same as the value returned by the
getColumnName method.getColumnLabel in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic java.lang.String getColumnName(int column)
throws java.sql.SQLException
getColumnName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic java.lang.String getSchemaName(int column)
throws java.sql.SQLException
Firebird has no schemas. This method always returns the empty string.
getSchemaName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic int getPrecision(int column)
throws java.sql.SQLException
For numeric data, this is the maximum precision. For character data, this is the length in characters. For datetime datatypes, this is the length in characters of the String representation (assuming the maximum allowed precision of the fractional seconds component). For binary data, this is the length in bytes. For the ROWID datatype, this is the length in bytes. 0 is returned for data types where the column size is not applicable.
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.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic int getScale(int column)
throws java.sql.SQLException
getScale in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic java.lang.String getTableName(int column)
throws java.sql.SQLException
getTableName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic java.lang.String getTableAlias(int column)
throws java.sql.SQLException
FirebirdResultSetMetaDatagetTableAlias in interface FirebirdResultSetMetaDatacolumn - 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
Firebird has no catalogs. This method always returns the empty string.
getCatalogName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic int getColumnType(int column)
throws java.sql.SQLException
getColumnType in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occursTypespublic java.lang.String getColumnTypeName(int column)
throws java.sql.SQLException
getColumnTypeName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...java.sql.SQLException - if a database access error occurspublic boolean isReadOnly(int column)
throws java.sql.SQLException
The current implementation always returns false.
isReadOnly in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic boolean isWritable(int column)
throws java.sql.SQLException
The current implementation always returns true.
isWritable in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic boolean isDefinitelyWritable(int column)
throws java.sql.SQLException
The current implementation always returns true.
isDefinitelyWritable in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...true if so; false otherwisejava.sql.SQLException - if a database access error occurspublic java.lang.String getColumnClassName(int column)
throws java.sql.SQLException
ResultSet.getObject
is called to retrieve a value from the column.
ResultSet.getObject may return a subclass of the
class returned by this method.
getColumnClassName in interface java.sql.ResultSetMetaDatacolumn - the first column is 1, the second is 2, ...ResultSet.getObject to retrieve the value in the specified
column. This is the class name used for custom mapping.java.sql.SQLException - if a database access error occursprotected java.util.Map<AbstractFieldMetaData.FieldKey,AbstractFieldMetaData.ExtendedFieldInfo> getExtendedFieldInfo(FBConnection connection) throws java.sql.SQLException
AbstractFieldMetaDatagetExtendedFieldInfo in class AbstractFieldMetaDataAbstractFieldMetaData.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-2021 Jaybird (Firebird JDBC/JCA) team. All rights reserved.