- java.lang.Object
-
- org.postgresql.pljava.jdbc.AbstractResultSet
-
- org.postgresql.pljava.jdbc.ObjectResultSet
-
- org.postgresql.pljava.jdbc.SingleRowResultSet
-
- All Implemented Interfaces:
AutoCloseable
,ResultSet
,Wrapper
- Direct Known Subclasses:
SingleRowReader
,SingleRowWriter
,TriggerResultSet
public abstract class SingleRowResultSet extends ObjectResultSet
A single row ResultSet- Author:
- Thomas Hallgren
-
-
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
Constructors Constructor Description SingleRowResultSet()
-
Method Summary
Modifier and Type Method Description boolean
absolute(int row)
Cursor positioning is not supported.void
afterLast()
Cursor positoning is not implemented.void
beforeFirst()
Cursor positoning is not implemented.void
deleteRow()
This feature is not supported.int
findColumn(String columnName)
boolean
first()
Cursor positioning is not implemented.int
getConcurrency()
int
getFetchDirection()
int
getFetchSize()
int
getHoldability()
ReturnsResultSet.CLOSE_CURSORS_AT_COMMIT
.ResultSetMetaData
getMetaData()
Returns the metadata for this result set.int
getRow()
protected abstract TupleDesc
getTupleDesc()
int
getType()
void
insertRow()
This feature is not supported.boolean
isAfterLast()
Returnsfalse
.boolean
isBeforeFirst()
Will always returnfalse
since aSingleRowResultSet
starts on the one and only row.boolean
isFirst()
Returnstrue
.boolean
isLast()
Returnstrue
.boolean
last()
Cursor positioning is not implemented.void
moveToCurrentRow()
This is a no-op since themoveToInsertRow()
method is unsupported.void
moveToInsertRow()
This feature is not supported on aSingleRowResultSet
.boolean
next()
This method will always returnfalse
but it will not change the state of theResultSet
.boolean
previous()
This method will always returnfalse
but it will not change the state of theResultSet
.boolean
relative(int rows)
Cursor positioning is not supported.boolean
rowDeleted()
Will always return false.boolean
rowInserted()
Will always return false.void
setFetchDirection(int direction)
OnlyResultSet.FETCH_FORWARD
is supported.void
setFetchSize(int fetchSize)
Only permitted value forfetchSize
is 1.void
updateObject(int columnIndex, Object x, int scale)
The scale is not really supported.void
updateRow()
This is a noop.-
Methods inherited from class org.postgresql.pljava.jdbc.ObjectResultSet
clearWarnings, getArray, getAsciiStream, getBigDecimal, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getCharacterStream, getClob, getDate, getDate, getDouble, getFloat, getInt, getLong, getNumber, getObject, getObject, getObject, getObjectValue, getObjectValue, getObjectValue, getRef, getShort, getString, getTime, getTime, getTimestamp, getTimestamp, getUnicodeStream, getURL, getValue, getValue, getWarnings, refreshRow, updateArray, updateAsciiStream, updateBigDecimal, updateBinaryStream, updateBlob, updateBoolean, updateByte, updateBytes, updateCharacterStream, updateClob, updateDate, updateDouble, updateFloat, updateInt, updateLong, updateNull, updateRef, updateShort, updateString, updateTime, updateTimestamp, wasNull
-
Methods inherited from class org.postgresql.pljava.jdbc.AbstractResultSet
getArray, getAsciiStream, getBigDecimal, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getCharacterStream, getClob, getCursorName, getDate, getDate, getDouble, getFloat, getInt, getLong, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getRef, getRowId, getRowId, getShort, getSQLXML, getSQLXML, getStatement, getString, getTime, getTime, getTimestamp, getTimestamp, getUnicodeStream, getURL, isWrapperFor, unwrap, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateByte, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDouble, updateFloat, updateInt, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateObject, updateObject, updateRef, updateRowId, updateRowId, updateShort, updateSQLXML, updateSQLXML, updateString, updateTime, updateTimestamp
-
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
cancelRowUpdates, close, isClosed, rowUpdated, updateObject, updateObject, updateObject, updateObject, updateObject
-
-
-
-
Method Detail
-
getConcurrency
public int getConcurrency() throws SQLException
- Throws:
SQLException
-
findColumn
public int findColumn(String columnName) throws SQLException
- Throws:
SQLException
-
getFetchDirection
public int getFetchDirection() throws SQLException
- Throws:
SQLException
-
getFetchSize
public int getFetchSize() throws SQLException
- Throws:
SQLException
-
getMetaData
public ResultSetMetaData getMetaData() throws SQLException
Returns the metadata for this result set.- Specified by:
getMetaData
in interfaceResultSet
- Overrides:
getMetaData
in classObjectResultSet
- Throws:
SQLException
- indicating that this feature is not supported.
-
getRow
public int getRow() throws SQLException
- Throws:
SQLException
-
getType
public int getType() throws SQLException
- Throws:
SQLException
-
afterLast
public void afterLast() throws SQLException
Cursor positoning is not implemented.- Throws:
SQLException
- indicating that this feature is not supported.
-
beforeFirst
public void beforeFirst() throws SQLException
Cursor positoning is not implemented.- Throws:
SQLException
- indicating that this feature is not supported.
-
first
public boolean first() throws SQLException
Cursor positioning is not implemented.- Throws:
SQLException
- indicating that this feature is not supported.
-
isAfterLast
public boolean isAfterLast() throws SQLException
Returnsfalse
.- Throws:
SQLException
-
isBeforeFirst
public boolean isBeforeFirst() throws SQLException
Will always returnfalse
since aSingleRowResultSet
starts on the one and only row.- Throws:
SQLException
-
isFirst
public boolean isFirst() throws SQLException
Returnstrue
.- Throws:
SQLException
-
isLast
public boolean isLast() throws SQLException
Returnstrue
.- Throws:
SQLException
-
last
public boolean last() throws SQLException
Cursor positioning is not implemented.- Throws:
SQLException
- indicating that this feature is not supported.
-
next
public boolean next() throws SQLException
This method will always returnfalse
but it will not change the state of theResultSet
.- Throws:
SQLException
-
previous
public boolean previous() throws SQLException
This method will always returnfalse
but it will not change the state of theResultSet
.- Throws:
SQLException
-
setFetchDirection
public void setFetchDirection(int direction) throws SQLException
OnlyResultSet.FETCH_FORWARD
is supported.- Throws:
SQLException
- indicating that this feature is not supported for other values ondirection
.
-
setFetchSize
public void setFetchSize(int fetchSize) throws SQLException
Only permitted value forfetchSize
is 1.- Throws:
SQLException
-
absolute
public boolean absolute(int row) throws SQLException
Cursor positioning is not supported.- Throws:
SQLException
- indicating that this feature is not supported.
-
relative
public boolean relative(int rows) throws SQLException
Cursor positioning is not supported.- Throws:
SQLException
- indicating that this feature is not supported.
-
deleteRow
public void deleteRow() throws SQLException
This feature is not supported.- Throws:
SQLException
- indicating that this feature is not supported.
-
insertRow
public void insertRow() throws SQLException
This feature is not supported.- Throws:
SQLException
- indicating that this feature is not supported.
-
moveToCurrentRow
public void moveToCurrentRow() throws SQLException
This is a no-op since themoveToInsertRow()
method is unsupported.- Throws:
SQLException
-
moveToInsertRow
public void moveToInsertRow() throws SQLException
This feature is not supported on aSingleRowResultSet
.- Throws:
SQLException
- indicating that this feature is not supported.
-
updateRow
public void updateRow() throws SQLException
This is a noop.- Throws:
SQLException
-
rowDeleted
public boolean rowDeleted() throws SQLException
Will always return false.- Throws:
SQLException
-
rowInserted
public boolean rowInserted() throws SQLException
Will always return false.- Throws:
SQLException
-
updateObject
public void updateObject(int columnIndex, Object x, int scale) throws SQLException
The scale is not really supported. This method just strips it off and callsResultSet.updateObject(int, Object)
- Throws:
SQLException
-
getHoldability
public int getHoldability()
ReturnsResultSet.CLOSE_CURSORS_AT_COMMIT
. A single-row result set serves a special purpose in the call or return of a function, and is not guaranteed to be usable beyond that function's return.
-
getTupleDesc
protected abstract TupleDesc getTupleDesc() throws SQLException
- Throws:
SQLException
-
-