org.firebirdsql.jdbc.field

## Class FBField

- java.lang.Object
- - org.firebirdsql.jdbc.field.FBField

- Direct Known Subclasses:
    FBBinaryField, FBLongVarCharField, FBWorkaroundStringField

      public abstract class FBField
      extends java.lang.Object

  Describe class `FBField` here.
  Author:
    Roman Rokytskyy, Mark Rotteveel

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected FieldDescriptor` | `fieldDescriptor`
    `protected GDSHelper` | `gdsHelper`
    `protected java.lang.String` | `mappingPath`
    `protected int` | `requiredType`
    `protected int` | `scale`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Close this field.
    `static FBField` | `createField(FieldDescriptor fieldDescriptor, FieldDataProvider dataProvider, GDSHelper gdsHelper, boolean cached)` This is a factory method that creates appropriate instance of the `FBField` class according to the SQL datatype.
    `java.lang.String` | `getAlias()` Returns the alias of the column as declared in XSQLVAR.
    `java.sql.Array` | `getArray()`
    `java.math.BigDecimal` | `getBigDecimal()`
    `java.math.BigDecimal` | `getBigDecimal(int scale)`
    `java.math.BigInteger` | `getBigInteger()`
    `java.io.InputStream` | `getBinaryStream()`
    `java.sql.Blob` | `getBlob()`
    `boolean` | `getBoolean()`
    `byte` | `getByte()`
    `byte[]` | `getBytes()`
    `java.io.Reader` | `getCharacterStream()`
    `java.sql.Clob` | `getClob()`
    `protected DatatypeCoder` | `getDatatypeCoder()`
    `java.sql.Date` | `getDate()`
    `java.sql.Date` | `getDate(java.util.Calendar cal)`
    `double` | `getDouble()`
    `protected byte[]` | `getFieldData()`
    `float` | `getFloat()`
    `int` | `getInt()`
    `long` | `getLong()`
    `java.lang.String` | `getName()` Returns the name of the column as declared in the XSQLVAR.
    `java.lang.Object` | `getObject()`
    `<T> T` | `getObject(java.lang.Class<T> type)`
    `java.lang.Object` | `getObject(java.util.Map<java.lang.String,java.lang.Class<?>> map)`
    `protected org.firebirdsql.jdbc.field.ObjectConverter` | `getObjectConverter()`
    `DatatypeCoder.RawDateTimeStruct` | `getRawDateTimeStruct()`
    `java.sql.Ref` | `getRef()`
    `java.lang.String` | `getRelationName()` Returns the relation to which belongs column as declared in XSQLVAR.
    `short` | `getShort()`
    `java.lang.String` | `getString()`
    `java.sql.Time` | `getTime()`
    `java.sql.Time` | `getTime(java.util.Calendar cal)`
    `java.sql.Timestamp` | `getTimestamp()`
    `java.sql.Timestamp` | `getTimestamp(java.util.Calendar cal)`
    `protected boolean` | `isInvertTimeZone()`
    `boolean` | `isNull()`
    `static boolean` | `isType(FieldDescriptor field, int jdbcType)`
    `void` | `setBigDecimal(java.math.BigDecimal value)`
    `void` | `setBigInteger(java.math.BigInteger value)`
    `void` | `setBinaryStream(java.io.InputStream in)`
    `void` | `setBinaryStream(java.io.InputStream in, int length)`
    `void` | `setBinaryStream(java.io.InputStream in, long length)`
    `protected void` | `setBinaryStreamInternal(java.io.InputStream in, long length)`
    `void` | `setBlob(FBBlob blob)`
    `void` | `setBoolean(boolean value)`
    `void` | `setByte(byte value)`
    `void` | `setBytes(byte[] value)`
    `void` | `setCharacterStream(java.io.Reader in)`
    `void` | `setCharacterStream(java.io.Reader in, int length)`
    `void` | `setCharacterStream(java.io.Reader in, long length)`
    `protected void` | `setCharacterStreamInternal(java.io.Reader in, long length)`
    `void` | `setClob(FBClob clob)`
    `void` | `setConnection(GDSHelper gdsHelper)`
    `void` | `setDate(java.sql.Date value)`
    `void` | `setDate(java.sql.Date value, java.util.Calendar cal)`
    `void` | `setDouble(double value)`
    `protected void` | `setFieldData(byte[] data)`
    `void` | `setFloat(float value)`
    `void` | `setInteger(int value)`
    `void` | `setLong(long value)`
    `void` | `setNull()`
    `void` | `setObject(java.lang.Object value)`
    `void` | `setRawDateTimeStruct(DatatypeCoder.RawDateTimeStruct raw)`
    `void` | `setRequiredType(int requiredType)` Set the required type for `getObject()` conversion.
    `void` | `setShort(short value)`
    `void` | `setString(java.lang.String value)`
    `void` | `setTime(java.sql.Time value)`
    `void` | `setTime(java.sql.Time value, java.util.Calendar cal)`
    `void` | `setTimestamp(java.sql.Timestamp value)`
    `void` | `setTimestamp(java.sql.Timestamp value, java.util.Calendar cal)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### fieldDescriptor

          protected final FieldDescriptor fieldDescriptor

    - #### gdsHelper

          protected GDSHelper gdsHelper

    - #### mappingPath

          protected java.lang.String mappingPath

    - #### requiredType

          protected int requiredType

    - #### scale

          protected int scale

  - ### Method Detail

    - #### getFieldData

          protected final byte[] getFieldData()

    - #### setFieldData

          protected final void setFieldData(byte[] data)

    - #### getObjectConverter

          protected final org.firebirdsql.jdbc.field.ObjectConverter getObjectConverter()

    - #### getDatatypeCoder

          protected final DatatypeCoder getDatatypeCoder()

    - #### isNull

          public final boolean isNull()
                               throws java.sql.SQLException

      Returns:
        `true` if the corresponding `field` is `null`, otherwise `false`.
      Throws:
        `java.sql.SQLException`

    - #### setNull

          public void setNull()

    - #### setConnection

          public void setConnection(GDSHelper gdsHelper)

    - #### setRequiredType

          public void setRequiredType(int requiredType)

      Set the required type for `getObject()` conversion.
      Parameters:
        `requiredType` - required type, one of the `Types` constants.

    - #### isType

          public static boolean isType(FieldDescriptor field,
                       int jdbcType)

      Returns:
        `true` if the field is of type `type`. TODO write correct ISCConstants.SQL_QUAD support TODO Consider moving to FieldDescriptor itself

    - #### createField

          public static FBField createField(FieldDescriptor fieldDescriptor,
                            FieldDataProvider dataProvider,
                            GDSHelper gdsHelper,
                            boolean cached)
                                     throws java.sql.SQLException

      This is a factory method that creates appropriate instance of the `FBField` class according to the SQL datatype. This instance knows how to perform all necessary type conversions.
      Throws:
        `java.sql.SQLException`

    - #### getName

          public java.lang.String getName()

      Returns the name of the column as declared in the XSQLVAR.

    - #### getAlias

          public java.lang.String getAlias()

      Returns the alias of the column as declared in XSQLVAR.

    - #### getRelationName

          public java.lang.String getRelationName()

      Returns the relation to which belongs column as declared in XSQLVAR.

    - #### close

          public void close()
                     throws java.sql.SQLException

      Close this field. This method tells field implementation to release all resources allocated when field methods were called.
      Throws:
        `java.sql.SQLException` - if field cannot be closed.

    - #### getByte

          public byte getByte()
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getShort

          public short getShort()
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getInt

          public int getInt()
                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getLong

          public long getLong()
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getFloat

          public float getFloat()
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getDouble

          public double getDouble()
                           throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBigDecimal

          public java.math.BigDecimal getBigDecimal()
                                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBigDecimal

          public java.math.BigDecimal getBigDecimal(int scale)
                                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBoolean

          public boolean getBoolean()
                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getString

          public java.lang.String getString()
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getObject

          public java.lang.Object getObject()
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getObject

          public java.lang.Object getObject(java.util.Map<java.lang.String,java.lang.Class<?>> map)
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getObject

          public <T> T getObject(java.lang.Class<T> type)
                      throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBinaryStream

          public java.io.InputStream getBinaryStream()
                                              throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getCharacterStream

          public java.io.Reader getCharacterStream()
                                            throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBytes

          public byte[] getBytes()
                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBlob

          public java.sql.Blob getBlob()
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getDate

          public java.sql.Date getDate()
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getDate

          public java.sql.Date getDate(java.util.Calendar cal)
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getTime

          public java.sql.Time getTime()
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getTime

          public java.sql.Time getTime(java.util.Calendar cal)
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getTimestamp

          public java.sql.Timestamp getTimestamp()
                                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getTimestamp

          public java.sql.Timestamp getTimestamp(java.util.Calendar cal)
                                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getRef

          public java.sql.Ref getRef()
                              throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getClob

          public java.sql.Clob getClob()
                                throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getArray

          public java.sql.Array getArray()
                                  throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getBigInteger

          public java.math.BigInteger getBigInteger()
                                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setByte

          public void setByte(byte value)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setShort

          public void setShort(short value)
                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setInteger

          public void setInteger(int value)
                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setLong

          public void setLong(long value)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setFloat

          public void setFloat(float value)
                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setDouble

          public void setDouble(double value)
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBigDecimal

          public void setBigDecimal(java.math.BigDecimal value)
                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBoolean

          public void setBoolean(boolean value)
                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setString

          public void setString(java.lang.String value)
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBigInteger

          public void setBigInteger(java.math.BigInteger value)
                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setObject

          public void setObject(java.lang.Object value)
                         throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBinaryStreamInternal

          protected void setBinaryStreamInternal(java.io.InputStream in,
                                     long length)
                                          throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBinaryStream

          public final void setBinaryStream(java.io.InputStream in,
                             long length)
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBinaryStream

          public final void setBinaryStream(java.io.InputStream in)
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBinaryStream

          public final void setBinaryStream(java.io.InputStream in,
                             int length)
                                     throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setCharacterStreamInternal

          protected void setCharacterStreamInternal(java.io.Reader in,
                                        long length)
                                             throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setCharacterStream

          public final void setCharacterStream(java.io.Reader in,
                                long length)
                                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setCharacterStream

          public final void setCharacterStream(java.io.Reader in)
                                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setCharacterStream

          public final void setCharacterStream(java.io.Reader in,
                                int length)
                                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBytes

          public void setBytes(byte[] value)
                        throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setDate

          public void setDate(java.sql.Date value,
                     java.util.Calendar cal)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setDate

          public void setDate(java.sql.Date value)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setTime

          public void setTime(java.sql.Time value,
                     java.util.Calendar cal)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setTime

          public void setTime(java.sql.Time value)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setTimestamp

          public void setTimestamp(java.sql.Timestamp value,
                          java.util.Calendar cal)
                            throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setTimestamp

          public void setTimestamp(java.sql.Timestamp value)
                            throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setBlob

          public void setBlob(FBBlob blob)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setClob

          public void setClob(FBClob clob)
                       throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### getRawDateTimeStruct

          public DatatypeCoder.RawDateTimeStruct getRawDateTimeStruct()
                                                               throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### setRawDateTimeStruct

          public void setRawDateTimeStruct(DatatypeCoder.RawDateTimeStruct raw)
                                    throws java.sql.SQLException

      Throws:
        `java.sql.SQLException`

    - #### isInvertTimeZone

          protected boolean isInvertTimeZone()

Copyright © 2001-2021 Jaybird (Firebird JDBC/JCA) team. All rights reserved.