JMSLTM Numerical Library 4.0

com.imsl.io
Class AbstractFlatFile

java.lang.Object
  extended bycom.imsl.io.AbstractFlatFile
All Implemented Interfaces:
ResultSet
Direct Known Subclasses:
FlatFile

public abstract class AbstractFlatFile
extends Object
implements ResultSet

Reads a text or binary file as a ResultSet.

In Java, the result of a database query is normally returned as a ResultSet object. This class is intended to support reading of text or binary flat files and returning them as a ResultSet.

A flat file is a rectangular data set where each row is an observation and each column is a variable. The data type in any one column is the same for all of the rows.


Nested Class Summary
protected static class AbstractFlatFile.FlatFileSQLException
          A SQLException thrown by the AbstractFlatFile class.
 
Field Summary
 
Fields inherited from interface java.sql.ResultSet
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
 
Constructor Summary
AbstractFlatFile()
          Initializes an AbstractFlatFile.
 
Method Summary
 boolean absolute(int row)
          Moves the cursor to the given row number in this ResultSet object.
 void afterLast()
          Moves the cursor to the end of this ResultSet object, just after the last row.
 void beforeFirst()
          Moves the cursor to the front of this ResultSet object, just before the first row.
protected  void beginGet()
          This method should be called at the start of every getType method.
 void cancelRowUpdates()
          Cancels the updates made to the current row in this ResultSet object.
 void clearWarnings()
          Clears all warnings reported on this ResultSet object.
 void close()
          Releases this ResultSet object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed.
 void deleteRow()
          Deletes the current row from this ResultSet object and from the underlying database.
protected abstract  byte[] doGetBytes(int columnIndex)
          Implements the actual getBytes().
protected abstract  boolean doNext()
          Implements the operations on the file required by the method next().
 int findColumn(String columnName)
          Maps the given ResultSet column name to its ResultSet column index.
protected  String findColumnName(int columnIndex)
          Maps the given columnIndex into its column name.
 boolean first()
          Moves the cursor to the first row in this ResultSet object.
 Array getArray(int columnIndex)
          Returns the value of the designated column in the current row of this ResultSet object as an Array object in the Java programming language.
 Array getArray(String columnName)
          Returns the value of the designated column in the current row of this ResultSet object as an Array object in the Java programming language.
 InputStream getAsciiStream(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters.
 InputStream getAsciiStream(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters.
 BigDecimal getBigDecimal(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a java.math.BigDecimal with full precision.
 BigDecimal getBigDecimal(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a java.math.BigDecimal with full precision.
 InputStream getBinaryStream(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a binary stream of uninterpreted bytes.
 InputStream getBinaryStream(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes.
 Blob getBlob(int columnIndex)
          Returns the value of the designated column in the current row of this ResultSet object as a Blob object in the Java programming language.
 Blob getBlob(String columnName)
          Returns the value of the designated column in the current row of this ResultSet object as a Blob object in the Java programming language.
 boolean getBoolean(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a boolean in the Java programming language.
 boolean getBoolean(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a boolean in the Java programming language.
 byte getByte(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a byte in the Java programming language.
 byte getByte(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a byte in the Java programming language.
 byte[] getBytes(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a byte array in the Java programming language.
 byte[] getBytes(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a byte array in the Java programming language.
 Reader getCharacterStream(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a java.io.Reader object.
 Reader getCharacterStream(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a java.io.Reader object.
 Clob getClob(int columnIndex)
          Returns the value of the designated column in the current row of this ResultSet object as a Clob object in the Java programming language.
 Clob getClob(String columnName)
          Returns the value of the designated column in the current row of this ResultSet object as a Clob object in the Java programming language.
 Class getColumnClass(int columnIndex)
          Returns the class of the items in the specified column.
abstract  int getColumnCount()
          Returns the number of columns in this ResultSet object.
 int getConcurrency()
          Returns the concurrency mode of this ResultSet object.
 String getCursorName()
          Gets the name of the SQL cursor used by this ResultSet object.
 Date getDate(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Date object in the Java programming language.
 Date getDate(int columnIndex, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Date object in the Java programming language.
 Date getDate(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Date object in the Java programming language.
 Date getDate(String columnName, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Date object in the Java programming language.
 double getDouble(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a double in the Java programming language.
 double getDouble(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a double in the Java programming language.
 int getFetchDirection()
          Returns the fetch direction for this ResultSet object.
 int getFetchSize()
          Returns the fetch size for this ResultSet object.
 float getFloat(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a float in the Java programming language.
 float getFloat(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a float in the Java programming language.
 int getInt(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as an int in the Java programming language.
 int getInt(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as an int in the Java programming language.
 long getLong(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a long in the Java programming language.
 long getLong(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a long in the Java programming language.
 ResultSetMetaData getMetaData()
          Retrieves the number, types and properties of this ResultSet object's columns.
abstract  Object getObject(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as an Object in the Java programming language.
 Object getObject(int columnIndex, Map map)
          Returns the value of the designated column in the current row of this ResultSet object as an Object in the Java programming language.
 Object getObject(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as an Object in the Java programming language.
 Object getObject(String columnName, Map map)
          Returns the value of the designated column in the current row of this ResultSet object as an Object in the Java programming language.
 Ref getRef(int columnIndex)
          Returns the value of the designated column in the current row of this ResultSet object as a Ref object in the Java programming language.
 Ref getRef(String columnName)
          Returns the value of the designated column in the current row of this ResultSet object as a Ref object in the Java programming language.
 int getRow()
          Retrieves the current row number.
 short getShort(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a short in the Java programming language.
 short getShort(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a short in the Java programming language.
 Statement getStatement()
          Returns the Statement object that produced this ResultSet object.
 String getString(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a String in the Java programming language.
 String getString(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a String in the Java programming language.
 Time getTime(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Time object in the Java programming language.
 Time getTime(int columnIndex, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Time object in the Java programming language.
 Time getTime(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Time object in the Java programming language.
 Time getTime(String columnName, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Time object in the Java programming language.
 Timestamp getTimestamp(int columnIndex)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
 Timestamp getTimestamp(int columnIndex, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
 Timestamp getTimestamp(String columnName)
          Gets the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object.
 Timestamp getTimestamp(String columnName, Calendar cal)
          Returns the value of the designated column in the current row of this ResultSet object as a java.sql.Timestamp object in the Java programming language.
 int getType()
          Returns the type of this ResultSet object.
 URL getURL(int columnIndex)
          Retrieves the value of the designated column in the current row of this ResultSet object as a java.net.URL object.
 URL getURL(String columnName)
          Retrieves the value of the designated column in the current row of this ResultSet object as a java.net.URL object.
 SQLWarning getWarnings()
          Returns the first warning reported by calls on this ResultSet object.
 void insertRow()
          Inserts the contents of the insert row into this ResultSet object and into the database.
 boolean isAfterLast()
          Indicates whether the cursor is after the last row in this ResultSet object.
 boolean isBeforeFirst()
          Indicates whether the cursor is before the first row in this ResultSet object.
 boolean isFirst()
          Indicates whether the cursor is on the first row of this ResultSet object.
 boolean isLast()
          Indicates whether the cursor is on the last row of this ResultSet object.
 boolean last()
          Moves the cursor to the last row in this ResultSet object.
 void moveToCurrentRow()
          Moves the cursor to the remembered cursor position, usually the current row.
 void moveToInsertRow()
          Moves the cursor to the insert row.
 boolean next()
          Moves the cursor down one row from its current position.
 boolean previous()
          Moves the cursor to the previous row in this ResultSet object.
 void refreshRow()
          Refreshes the current row with its most recent value in the database.
 boolean relative(int rows)
          Moves the cursor a relative number of rows, either positive or negative.
 boolean rowDeleted()
          Indicates whether a row has been deleted.
 boolean rowInserted()
          Indicates whether the current row has had an insertion.
 boolean rowUpdated()
          Indicates whether the current row has been updated.
protected  void setColumnClass(int columnIndex, Class columnClass)
          Sets a column class.
protected  void setColumnName(int columnIndex, String columnName)
          Sets a column name.
 void setFetchDirection(int direction)
          Gives a hint as to the direction in which the rows in this ResultSet object will be processed.
 void setFetchSize(int rows)
          Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed for this ResultSet object.
protected  void setWarning(SQLWarning warning)
          Sets a SQLWarning.
 void updateArray(int column, Array x)
          Updates the designated column with an Array value.
 void updateArray(String columnName, Array x)
          Updates the designated column with an Array value.
 void updateAsciiStream(int columnIndex, InputStream x, int length)
          Updates the designated column with an ascii stream value.
 void updateAsciiStream(String columnName, InputStream x, int length)
          Updates the designated column with an ascii stream value.
 void updateBigDecimal(int columnIndex, BigDecimal x)
          Updates the designated column with a java.math.BigDecimal value.
 void updateBigDecimal(String columnName, BigDecimal x)
          Updates the designated column with a java.sql.BigDecimal value.
 void updateBinaryStream(int columnIndex, InputStream x, int length)
          Updates the designated column with a binary stream value.
 void updateBinaryStream(String columnName, InputStream x, int length)
          Updates the designated column with a binary stream value.
 void updateBlob(int column, Blob x)
          Updates the designated column with an java.sql.Blob value.
 void updateBlob(String columnName, Blob x)
          Updates the designated column with an java.sql.Blob value.
 void updateBoolean(int columnIndex, boolean x)
          Updates the designated column with a boolean value.
 void updateBoolean(String columnName, boolean x)
          Updates the designated column with a boolean value.
 void updateByte(int columnIndex, byte x)
          Updates the designated column with a byte value.
 void updateByte(String columnName, byte x)
          Updates the designated column with a byte value.
 void updateBytes(int columnIndex, byte[] x)
          Updates the designated column with a byte array value.
 void updateBytes(String columnName, byte[] x)
          Updates the designated column with a byte value.
 void updateCharacterStream(int columnIndex, Reader x, int length)
          Updates the designated column with a character stream value.
 void updateCharacterStream(String columnName, Reader reader, int length)
          Updates the designated column with a character stream value.
 void updateClob(int column, Clob x)
          Updates the designated column with an java.sql.Clob value.
 void updateClob(String columnName, Clob x)
          Updates the designated column with an java.sql.Clob value.
 void updateDate(int columnIndex, Date x)
          Updates the designated column with a java.sql.Date value.
 void updateDate(String columnName, Date x)
          Updates the designated column with a java.sql.Date value.
 void updateDouble(int columnIndex, double x)
          Updates the designated column with a double value.
 void updateDouble(String columnName, double x)
          Updates the designated column with a double value.
 void updateFloat(int columnIndex, float x)
          Updates the designated column with a float value.
 void updateFloat(String columnName, float x)
          Updates the designated column with a float value.
 void updateInt(int columnIndex, int x)
          Updates the designated column with an int value.
 void updateInt(String columnName, int x)
          Updates the designated column with an int value.
 void updateLong(int columnIndex, long x)
          Updates the designated column with a long value.
 void updateLong(String columnName, long x)
          Updates the designated column with a long value.
 void updateNull(int columnIndex)
          Gives a nullable column a null value.
 void updateNull(String columnName)
          Updates the designated column with a null value.
 void updateObject(int columnIndex, Object x)
          Updates the designated column with an Object value.
 void updateObject(int columnIndex, Object x, int scale)
          Updates the designated column with an Object value.
 void updateObject(String columnName, Object x)
          Updates the designated column with an Object value.
 void updateObject(String columnName, Object x, int scale)
          Updates the designated column with an Object value.
 void updateRef(int column, Ref x)
          Updates the designated column with an java.sql.Ref value.
 void updateRef(String columnName, Ref x)
          Updates the designated column with an java.sql.Ref value.
 void updateRow()
          Updates the underlying database with the new contents of the current row of this ResultSet object.
 void updateShort(int columnIndex, short x)
          Updates the designated column with a short value.
 void updateShort(String columnName, short x)
          Updates the designated column with a short value.
 void updateString(int columnIndex, String x)
          Updates the designated column with a String value.
 void updateString(String columnName, String x)
          Updates the designated column with a String value.
 void updateTime(int columnIndex, Time x)
          Updates the designated column with a java.sql.Time value.
 void updateTime(String columnName, Time x)
          Updates the designated column with a java.sql.Time value.
 void updateTimestamp(int columnIndex, Timestamp x)
          Updates the designated column with a java.sql.Timestamp value.
 void updateTimestamp(String columnName, Timestamp x)
          Updates the designated column with a java.sql.Timestamp value.
 boolean wasNull()
          Reports whether the last column read had a value of SQL NULL.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.sql.ResultSet
getBigDecimal, getBigDecimal, getUnicodeStream, getUnicodeStream
 

Constructor Detail

AbstractFlatFile

public AbstractFlatFile()
Initializes an AbstractFlatFile. Since AbstractFlatFile is abstract, it cannot be directly instantiated.

Method Detail

absolute

public boolean absolute(int row)
                 throws SQLException
Moves the cursor to the given row number in this ResultSet object.

Specified by:
absolute in interface ResultSet
Parameters:
row - an int which specifies a row, of the ResultSet object, where the cursor is to be moved
Returns:
a boolean whose value is true if the cursor is on the result set; false otherwise
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since only forward operations are allowed
SQLException

afterLast

public void afterLast()
               throws SQLException
Moves the cursor to the end of this ResultSet object, just after the last row. This method has no effect if the result set contains no rows.

Specified by:
afterLast in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since this method has not been implemented
SQLException

beforeFirst

public void beforeFirst()
                 throws SQLException
Moves the cursor to the front of this ResultSet object, just before the first row. This method has no effect if the result set contains no rows.

Specified by:
beforeFirst in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since only forward operations are allowed
SQLException

beginGet

protected void beginGet()
This method should be called at the start of every getType method. It closes any InputStreams or Readers created by get methods in this object. It also resets the wasNull flag to false.


cancelRowUpdates

public void cancelRowUpdates()
                      throws SQLException
Cancels the updates made to the current row in this ResultSet object. Since updates are not allowed, this method always throws an SQLException.

Specified by:
cancelRowUpdates in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since updates are not allowed
SQLException

clearWarnings

public void clearWarnings()
                   throws SQLException
Clears all warnings reported on this ResultSet object. After this method is called, the method getWarnings returns null until a new warning is reported for this ResultSet object.

Specified by:
clearWarnings in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

close

public void close()
           throws SQLException
Releases this ResultSet object's database and JDBC resources immediately instead of waiting for this to happen when it is automatically closed.

Specified by:
close in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

deleteRow

public void deleteRow()
               throws SQLException
Deletes the current row from this ResultSet object and from the underlying database. Since updates are not allowed, this method always throws an SQLException.

Specified by:
deleteRow in interface ResultSet
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since updates are not allowed
SQLException

doGetBytes

protected abstract byte[] doGetBytes(int columnIndex)
                              throws SQLException
Implements the actual getBytes(). The bytes represent the raw values returned by the driver.

Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a byte array representation of the column value; if the value is SQL null, the value returned is null
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

doNext

protected abstract boolean doNext()
                           throws SQLException
Implements the operations on the file required by the method next().

Returns:
a boolean, true if the new current row is valid; false if there are no more rows
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

findColumn

public int findColumn(String columnName)
               throws SQLException
Maps the given ResultSet column name to its ResultSet column index.

Specified by:
findColumn in interface ResultSet
Parameters:
columnName - a String specifying the name of the column
Returns:
an int specifying the column index of the given column name
Throws:
AbstractFlatFile.FlatFileSQLException - if the ResultSet object does not contain columnName or a database access error occurs
SQLException

findColumnName

protected String findColumnName(int columnIndex)
                         throws SQLException
Maps the given columnIndex into its column name.

Parameters:
columnIndex - an int specifying the index of a column for which the name is to be found
Returns:
a String containing the name of the column
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

first

public boolean first()
              throws SQLException
Moves the cursor to the first row in this ResultSet object.

Specified by:
first in interface ResultSet
Returns:
a boolean whose value is true if the cursor is on the result set; false otherwise
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since only forward operations are allowed
SQLException

getArray

public Array getArray(int columnIndex)
               throws SQLException
Returns the value of the designated column in the current row of this ResultSet object as an Array object in the Java programming language.

Specified by:
getArray in interface ResultSet
Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a Array object representing an SQL Array value in the specified column
Throws:
AbstractFlatFile.FlatFileSQLException - is always thrown since this method is not implemented
SQLException

getArray

public Array getArray(String columnName)
               throws SQLException
Returns the value of the designated column in the current row of this ResultSet object as an Array object in the Java programming language.

Specified by:
getArray in interface ResultSet
Parameters:
columnName - a String which specifies the SQL name of the column
Returns:
an Array object representing the SQL ARRAY value in the specified column
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getAsciiStream

public InputStream getAsciiStream(int columnIndex)
                           throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARCHAR values. The JDBC driver will do any necessary conversion from the database format into ASCII.

Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getType method implicitly closes the stream. Also, a stream may return 0 when the method InputStream.available is called whether there is data available or not.

Specified by:
getAsciiStream in interface ResultSet
Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a java.io.InputStream that delivers the database column value as a stream of one-byte ASCII characters; if the value is SQL NULL, the value returned is null
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getAsciiStream

public InputStream getAsciiStream(String columnName)
                           throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a stream of ASCII characters. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARCHAR values. The JDBC driver will do any necessary conversion from the database format into ASCII.

Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getType method implicitly closes the stream. Also, a stream may return 0 when the method available is called whether there is data available or not.

Specified by:
getAsciiStream in interface ResultSet
Parameters:
columnName - a String which specifies the SQL name of the column
Returns:
a java.io.InputStream that delivers the database column value as a stream of one-byte ASCII characters. If the value is SQL NULL, the value returned is null.
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBigDecimal

public BigDecimal getBigDecimal(int columnIndex)
                         throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a java.math.BigDecimal with full precision.

Specified by:
getBigDecimal in interface ResultSet
Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a java.math.BigDecimal object that contains the column value; if the value is SQL NULL, the value returned is null in the Java programming language
Throws:
AbstractFlatFile.FlatFileSQLException - if a conversion or database access error occurs
SQLException

getBigDecimal

public BigDecimal getBigDecimal(String columnName)
                         throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a java.math.BigDecimal with full precision.

Specified by:
getBigDecimal in interface ResultSet
Parameters:
columnName - a String which specifies the SQL name of the column
Returns:
a java.math.BigDecimal object that contains the column value; if the value is SQL NULL, the value returned is null in the Java programming language
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBinaryStream

public InputStream getBinaryStream(int columnIndex)
                            throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a binary stream of uninterpreted bytes. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARBINARY values.

Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getType method implicitly closes the stream. Also, a stream may return 0 when the method InputStream.available is called whether there is data available or not.

Specified by:
getBinaryStream in interface ResultSet
Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a java.io.InputStream that delivers the database column value as a stream of uninterpreted bytes; if the value is SQL NULL, the value returned is null
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBinaryStream

public InputStream getBinaryStream(String columnName)
                            throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a stream of uninterpreted bytes. The value can then be read in chunks from the stream. This method is particularly suitable for retrieving large LONGVARBINARY values.

Note: All the data in the returned stream must be read prior to getting the value of any other column. The next call to a getType method implicitly closes the stream. Also, a stream may return 0 when the method available is called whether there is data available or not.

Specified by:
getBinaryStream in interface ResultSet
Parameters:
columnName - a String which specifies the SQL name of the column
Returns:
a java.io.InputStream that delivers the database column value as a stream of uninterpreted bytes; if the value is SQL NULL, the result is null
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBlob

public Blob getBlob(int columnIndex)
             throws SQLException
Returns the value of the designated column in the current row of this ResultSet object as a Blob object in the Java programming language.

Specified by:
getBlob in interface ResultSet
Parameters:
columnIndex - an int which specifies the column. The first column is 1, the second is 2, ...
Returns:
a Blob object representing the SQL BLOB value in the specified column
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBlob

public Blob getBlob(String columnName)
             throws SQLException
Returns the value of the designated column in the current row of this ResultSet object as a Blob object in the Java programming language.

Specified by:
getBlob in interface ResultSet
Parameters:
columnName - a String which specifies the SQL name of the column
Returns:
a Blob object representing the SQL BLOB value in the specified column
Throws:
AbstractFlatFile.FlatFileSQLException - if a database access error occurs
SQLException

getBoolean

public boolean getBoolean(int columnIndex)
                   throws SQLException
Gets the value of the designated column in the current row of this ResultSet object as a boolean in the Java programming language.

Specified by: