| java.lang.Object org.apache.derby.impl.jdbc.ConnectionChild org.apache.derby.impl.jdbc.EmbedClob
EmbedClob | final class EmbedClob extends ConnectionChild implements Clob(Code) | | Implements java.sql.Clob (see the JDBC 2.0 spec).
A clob sits on top of a CHAR, VARCHAR or LONG VARCHAR column.
If its data is small (less than 1 page) it is a byte array taken from
the SQLChar class. If it is large (more than 1 page) it is a long column
in the database. The long column is accessed as a stream, and is implemented
in store as an OverflowInputStream. The Resetable interface allows sending
messages to that stream to initialize itself (reopen its container and
lock the corresponding row) and to reset itself to the beginning.
NOTE: In the case that the data is large, it is represented as a stream.
This stream can be returned to the user in the getAsciiStream() method.
This means that we have limited control over the state of the stream,
since the user can read bytes from it at any time. Thus all methods
here reset the stream to the beginning before doing any work.
CAVEAT: The methods may not behave correctly if a user sets up
multiple threads and sucks data from the stream (returned from
getAsciiStream()) at the same time as calling the Clob methods.
Supports
- JSR169 - no subsetting for java.sql.Clob
- JDBC 2.0
- JDBC 3.0 - no new dependencies on new JDBC 3.0 or JDK 1.4 classes,
new update methods can safely be added into implementation.
|
Method Summary | |
protected void | finalize() | public void | free() This method frees the Clob object and releases the resources the resources
that it holds. | public java.io.InputStream | getAsciiStream() Gets the CLOB value designated by this Clob
object as a stream of Ascii bytes. | public java.io.Reader | getCharacterStream() Gets the Clob contents as a Unicode stream. | public java.io.Reader | getCharacterStream(long pos, long length) | public String | getSubString(long pos, int length) Returns a copy of the specified substring
in the CLOB value
designated by this Clob object.
The substring begins at position
pos and has up to length consecutive
characters. | public long | length() Returns the number of characters
in the CLOB value
designated by this Clob object. | static SQLException | noStateChangeLOB(Throwable t) | public long | position(String searchStr, long start) Determines the character position at which the specified substring
searchstr appears in the CLOB . | public long | position(Clob searchClob, long start) Determines the character position at which the specified
Clob object searchstr appears in this
Clob object. | public java.io.OutputStream | setAsciiStream(long pos) JDBC 3.0
Retrieves a stream to be used to write Ascii characters to the CLOB
value that this Clob object represents, starting at position pos. | public java.io.Writer | setCharacterStream(long pos) JDBC 3.0
Retrieves a stream to be used to write a stream of Unicode characters to the
CLOB value that this Clob object represents, starting at position pos. | public int | setString(long pos, String parameterName) JDBC 3.0
Writes the given Java String to the CLOB value that this Clob object designates
at the position pos. | public int | setString(long pos, String str, int offset, int len) JDBC 3.0
Writes len characters of str, starting at character offset, to the CLOB value
that this Clob represents. | public void | truncate(long len) |
EmbedClob | EmbedClob(String clobString, EmbedConnection con)(Code) | | This constructor is used to create a empty Clob object. It is used by the
Connection interface method createClob().
Parameters: clobString - A String object containing the data to be stores in the Clob. Parameters: con - The Connection object associated with this EmbedClob object. |
finalize | protected void finalize()(Code) | | |
free | public void free() throws SQLException(Code) | | This method frees the Clob object and releases the resources the resources
that it holds. The object is invalid once the free method
is called. If free is called multiple times, the
subsequent calls to free are treated as a no-op.
throws: SQLException - if an error occurs releasingthe Clob's resources |
getAsciiStream | public java.io.InputStream getAsciiStream() throws SQLException(Code) | | Gets the CLOB value designated by this Clob
object as a stream of Ascii bytes.
an ascii stream containing the CLOB data exception: SQLException - if there is an error accessing theCLOB value |
getCharacterStream | public java.io.Reader getCharacterStream() throws SQLException(Code) | | Gets the Clob contents as a Unicode stream.
a Unicode stream containing the CLOB data exception: SQLException - if there is an error accessing theCLOB |
getSubString | public String getSubString(long pos, int length) throws SQLException(Code) | | Returns a copy of the specified substring
in the CLOB value
designated by this Clob object.
The substring begins at position
pos and has up to length consecutive
characters. The starting position must be between 1 and the length
of the CLOB plus 1. This allows for zero-length CLOB values, from
which only zero-length substrings can be returned.
If a larger length is requested than there are characters available,
characters from the start position to the end of the CLOB are returned.
Parameters: pos - the first character of the substring to be extracted.The first character is at position 1. Parameters: length - the number of consecutive characters to be copied a String that is the specified substring inthe CLOB value designated by this Clob object exception: SQLException - if there is an error accessing theCLOB NOTE: If the starting position is the length of the CLOB plus 1,zero characters are returned regardless of the length requested. |
length | public long length() throws SQLException(Code) | | Returns the number of characters
in the CLOB value
designated by this Clob object.
length of the CLOB in characters exception: SQLException - if there is an error accessing thelength of the CLOB |
position | public long position(String searchStr, long start) throws SQLException(Code) | | Determines the character position at which the specified substring
searchstr appears in the CLOB . The search
begins at position start .
Parameters: searchStr - the substring for which to search Parameters: start - the position at which to begin searching; the first positionis 1 the position at which the substring appears, else -1; the firstposition is 1 exception: SQLException - if there is an error accessing theCLOB value |
position | public long position(Clob searchClob, long start) throws SQLException(Code) | | Determines the character position at which the specified
Clob object searchstr appears in this
Clob object. The search begins at position
start .
Parameters: searchClob - the Clob object for which to search Parameters: start - the position at which to begin searching; the firstposition is 1 the position at which the Clob object appears,else -1; the first position is 1 exception: SQLException - if there is an error accessing theCLOB value |
setAsciiStream | public java.io.OutputStream setAsciiStream(long pos) throws SQLException(Code) | | JDBC 3.0
Retrieves a stream to be used to write Ascii characters to the CLOB
value that this Clob object represents, starting at position pos.
Parameters: pos - - the position at which to start writing to this Clob object the stream to which ASCII encoded characters can be written exception: SQLException - Feature not implemented for now. |
setCharacterStream | public java.io.Writer setCharacterStream(long pos) throws SQLException(Code) | | JDBC 3.0
Retrieves a stream to be used to write a stream of Unicode characters to the
CLOB value that this Clob object represents, starting at position pos.
Parameters: pos - - the position at which to start writing to this Clob object the stream to which Unicode encoded characters can be written exception: SQLException - Feature not implemented for now. |
setString | public int setString(long pos, String parameterName) throws SQLException(Code) | | JDBC 3.0
Writes the given Java String to the CLOB value that this Clob object designates
at the position pos.
Parameters: pos - - the position at which to start writing to the CLOB value thatthis Clob object represents the number of characters written exception: SQLException - Feature not implemented for now. |
setString | public int setString(long pos, String str, int offset, int len) throws SQLException(Code) | | JDBC 3.0
Writes len characters of str, starting at character offset, to the CLOB value
that this Clob represents.
Parameters: pos - - the position at which to start writing to this Clob object Parameters: str - - the string to be written to the CLOB value that this Clob designates Parameters: offset - - the offset into str to start reading the characters to be written Parameters: len - - the number of characters to be written the number of characters written exception: SQLException - Feature not implemented for now. |
truncate | public void truncate(long len) throws SQLException(Code) | | JDBC 3.0
Truncates the CLOB value that this Clob designates to have a length of len characters
Parameters: len - - the length, in bytes, to which the CLOB value that this Blobvalue should be truncated exception: SQLException - Feature not implemented for now. |
|
|