|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The interface that adds support to the JDBC API for the JavaBeansTM component model. A rowset, which can be used as a JavaBeans component in a visual Bean development environment, can be created and configured at design time and executed at run time.
The RowSet
interface provides a set of JavaBeans properties that allow a RowSet
instance to be configured to connect to a JDBC data source and read
some data from the data source. A group of setter methods (setInt
,
setBytes
, setString
, and so on)
provide a way to pass input parameters to a rowset's command property.
This command is the SQL query the rowset uses when it gets its data from
a relational database, which is generally the case.
The RowSet
interface supports JavaBeans events, allowing other components in an
application to be notified when an event occurs on a rowset,
such as a change in its value.
The RowSet
interface is unique in that it is intended to be
implemented using the rest of the JDBC API. In other words, a
RowSet
implementation is a layer of software that executes "on top"
of a JDBC driver. Implementations of the RowSet
interface can
be provided by anyone, including JDBC driver vendors who want to
provide a RowSet
implementation as part of their JDBC products.
A RowSet
object may make a connection with a data source and
maintain that connection throughout its life cycle, in which case it is
called a connected rowset. A rowset may also make a connection with
a data source, get data from it, and then close the connection. Such a rowset
is called a disconnected rowset. A disconnected rowset may make
changes to its data while it is disconnected and then send the changes back
to the original source of the data, but it must reestablish a connection to do so.
A disconnected rowset may have a reader (a RowSetReader
object)
and a writer (a RowSetWriter
object) associated with it.
The reader may be implemented in many different ways to populate a rowset
with data, including getting data from a non-relational data source. The
writer can also be implemented in many different ways to propagate changes
made to the rowset's data back to the underlying data source.
Rowsets are easy to use. The RowSet
interface extends the standard
java.sql.ResultSet
interface. The RowSetMetaData
interface extends the java.sql.ResultSetMetaData
interface.
Thus, developers familiar
with the JDBC API will have to learn a minimal number of new APIs to
use rowsets. In addition, third-party software tools that work with
JDBC ResultSet
objects will also easily be made to work with rowsets.
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 |
Method Summary | |
void |
addRowSetListener(RowSetListener listener)
Registers the given listener so that it will be notified of events that occur on this RowSet object. |
void |
clearParameters()
Clears the parameters set for this RowSet object's command.
|
void |
execute()
Fills this RowSet object with data.
|
String |
getCommand()
Retrieves this RowSet object's command property.
|
String |
getDataSourceName()
Retrieves the logical name that identifies the data source for this RowSet object. |
boolean |
getEscapeProcessing()
Retrieves whether escape processing is enabled for this RowSet object.
|
int |
getMaxFieldSize()
Retrieves the maximum number of bytes that may be returned for certain column values. |
int |
getMaxRows()
Retrieves the maximum number of rows that this RowSet
object can contain.
|
String |
getPassword()
Retrieves the password used to create a database connection. |
int |
getQueryTimeout()
Retrieves the maximum number of seconds the driver will wait for a statement to execute. |
int |
getTransactionIsolation()
Retrieves the transaction isolation level set for this RowSet object. |
Map |
getTypeMap()
Retrieves the Map object associated with this
RowSet object, which specifies the custom mapping
of SQL user-defined types, if any. |
String |
getUrl()
Retrieves the url property this RowSet object will use to
create a connection if it uses the DriverManager
instead of a DataSource object to establish the connection.
|
String |
getUsername()
Retrieves the username used to create a database connection for this RowSet object.
|
boolean |
isReadOnly()
Retrieves whether this RowSet object is read-only.
|
void |
removeRowSetListener(RowSetListener listener)
Removes the specified listener from the list of components that will be notified when an event occurs on this RowSet object. |
void |
setArray(int i,
Array x)
Sets the designated parameter in this RowSet object's command
with the given Array value. |
void |
setAsciiStream(int parameterIndex,
InputStream x,
int length)
Sets the designated parameter in this RowSet object's command
to the given java.io.InputStream value.
|
void |
setBigDecimal(int parameterIndex,
BigDecimal x)
Sets the designated parameter in this RowSet object's command
to the given java.math.BigDeciaml value.
|
void |
setBinaryStream(int parameterIndex,
InputStream x,
int length)
Sets the designated parameter in this RowSet object's command
to the given java.io.InputStream value.
|
void |
setBlob(int i,
Blob x)
Sets the designated parameter in this RowSet object's command
with the given Blob value. |
void |
setBoolean(int parameterIndex,
boolean x)
Sets the designated parameter in this RowSet object's command
to the given Java boolean value. |
void |
setByte(int parameterIndex,
byte x)
Sets the designated parameter in this RowSet object's command
to the given Java byte value. |
void |
setBytes(int parameterIndex,
byte[] x)
Sets the designated parameter in this RowSet object's command
to the given Java array of byte values. |
void |
setCharacterStream(int parameterIndex,
Reader reader,
int length)
Sets the designated parameter in this RowSet object's command
to the given java.io.Reader value.
|
void |
setClob(int i,
Clob x)
Sets the designated parameter in this RowSet object's command
with the given Clob value. |
void |
setCommand(String cmd)
Sets this RowSet object's command property to the given
SQL query.
|
void |
setConcurrency(int concurrency)
Sets the concurrency of this RowSet object to the given
concurrency level. |
void |
setDataSourceName(String name)
Sets the data source name property for this RowSet object to the
given String .
|
void |
setDate(int parameterIndex,
Date x)
Sets the designated parameter in this RowSet object's command
to the given java.sql.Date value. |
void |
setDate(int parameterIndex,
Date x,
Calendar cal)
Sets the designated parameter in this RowSet object's command
with the given java.sql.Date value. |
void |
setDouble(int parameterIndex,
double x)
Sets the designated parameter in this RowSet object's command
to the given Java double value. |
void |
setEscapeProcessing(boolean enable)
Sets escape processing for this RowSet object on or
off. |
void |
setFloat(int parameterIndex,
float x)
Sets the designated parameter in this RowSet object's command
to the given Java float value. |
void |
setInt(int parameterIndex,
int x)
Sets the designated parameter in this RowSet object's command
to the given Java int value. |
void |
setLong(int parameterIndex,
long x)
Sets the designated parameter in this RowSet object's command
to the given Java long value. |
void |
setMaxFieldSize(int max)
Sets the maximum number of bytes that can be returned for a column value to the given number of bytes. |
void |
setMaxRows(int max)
Sets the maximum number of rows that this RowSet
object can contain to the specified number.
|
void |
setNull(int parameterIndex,
int sqlType)
Sets the designated parameter in this RowSet object's SQL
command to SQL NULL .
|
void |
setNull(int paramIndex,
int sqlType,
String typeName)
Sets the designated parameter in this RowSet object's SQL
command to SQL NULL . |
void |
setObject(int parameterIndex,
Object x)
Sets the designated parameter in this RowSet object's command
with a Java Object . |
void |
setObject(int parameterIndex,
Object x,
int targetSqlType)
Sets the designated parameter in this RowSet object's command
with a Java Object . |
void |
setObject(int parameterIndex,
Object x,
int targetSqlType,
int scale)
Sets the designated parameter in this RowSet object's command
with the given Java Object . |
void |
setPassword(String password)
Sets the database password for this RowSet object to
the given String . |
void |
setQueryTimeout(int seconds)
Sets the maximum time the driver will wait for a statement to execute to the given number of seconds. |
void |
setReadOnly(boolean value)
Sets whether this RowSet object is read-only to the
given boolean . |
void |
setRef(int i,
Ref x)
Sets the designated parameter in this RowSet object's command
with the given Ref value. |
void |
setShort(int parameterIndex,
short x)
Sets the designated parameter in this RowSet object's command
to the given Java short value. |
void |
setString(int parameterIndex,
String x)
Sets the designated parameter in this RowSet object's command
to the given Java String value. |
void |
setTime(int parameterIndex,
Time x)
Sets the designated parameter in this RowSet object's command
to the given java.sql.Time value. |
void |
setTime(int parameterIndex,
Time x,
Calendar cal)
Sets the designated parameter in this RowSet object's command
with the given java.sql.Time value. |
void |
setTimestamp(int parameterIndex,
Timestamp x)
Sets the designated parameter in this RowSet object's command
to the given java.sql.Timestamp value. |
void |
setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal)
Sets the designated parameter in this RowSet object's command
with the given java.sql.Timestamp value. |
void |
setTransactionIsolation(int level)
Sets the transaction isolation level for this RowSet obejct. |
void |
setType(int type)
Sets the type of this RowSet object to the given type.
|
void |
setTypeMap(Map map)
Installs the given java.util.Map object as the default
type map for this RowSet object. |
void |
setUrl(String url)
Sets the URL this RowSet object will use when it uses the
DriverManager to create a connection.
|
void |
setUsername(String name)
Sets the username property for this RowSet object to the
given String . |
Method Detail |
public String getUrl() throws SQLException
RowSet
object will use to
create a connection if it uses the DriverManager
instead of a DataSource
object to establish the connection.
The default value is null
.
SQLException
- if a database access error occurssetUrl(java.lang.String)
public void setUrl(String url) throws SQLException
RowSet
object will use when it uses the
DriverManager
to create a connection.
Setting this property is optional. If a URL is used, a JDBC driver
that accepts the URL must be loaded by the application before the
rowset is used to connect to a database. The rowset will use the URL
internally to create a database connection when reading or writing
data. Either a URL or a data source name is used to create a
connection, whichever was specified most recently.
url
- a string value; may be null
SQLException
- if a database access error occursgetUrl()
public String getDataSourceName()
RowSet
object. Users should set
either the url property or the data source name property. The rowset will use
the property that was set more recently to get a connection.
setDataSourceName(java.lang.String)
,
setUrl(java.lang.String)
public void setDataSourceName(String name) throws SQLException
RowSet
object to the
given String
.
The value of the data source name property can be used to do a lookup of
a DataSource
object that has been registered with a naming
service. After being retrieved, the DataSource
object can be
used to create a connection to the data source that it represents.
name
- the logical name of the data source for this RowSet
object
SQLException
- if a database access error occursgetDataSourceName()
public String getUsername()
RowSet
object.
The username property is set at run time before calling the method
execute
. It is
not usually part of the serialized state of a RowSet
object.
setUsername(java.lang.String)
public void setUsername(String name) throws SQLException
RowSet
object to the
given String
.
name
- a user name
SQLException
- if a database access error occursgetUsername()
public String getPassword()
execute
. It is not usually part of the serialized state
of a RowSet
object.
setPassword(java.lang.String)
public void setPassword(String password) throws SQLException
RowSet
object to
the given String
.
password
- the password string
SQLException
- if a database access error occursgetPassword()
public int getTransactionIsolation()
RowSet
object.
Connection.TRANSACTION_READ_UNCOMMITTED
,
Connection.TRANSACTION_READ_COMMITTED
,
Connection.TRANSACTION_REPEATABLE_READ
, or
Connection.TRANSACTION_SERIALIZABLE
setTransactionIsolation(int)
public void setTransactionIsolation(int level) throws SQLException
RowSet
obejct.
level
- the transaction isolation level; one of
Connection.TRANSACTION_READ_UNCOMMITTED
,
Connection.TRANSACTION_READ_COMMITTED
,
Connection.TRANSACTION_REPEATABLE_READ
, or
Connection.TRANSACTION_SERIALIZABLE
SQLException
- if a database access error occursgetTransactionIsolation()
public Map getTypeMap() throws SQLException
Map
object associated with this
RowSet
object, which specifies the custom mapping
of SQL user-defined types, if any. The default is for the
type map to be empty.
java.util.Map
object containing the names of
SQL user-defined types and the Java classes to which they are
to be mapped
SQLException
- if a database access error occurssetTypeMap(java.util.Map)
public void setTypeMap(Map map) throws SQLException
java.util.Map
object as the default
type map for this RowSet
object. This type map will be
used unless another type map is supplied as a method parameter.
map
- a java.util.Map
object containing the names of
SQL user-defined types and the Java classes to which they are
to be mapped
SQLException
- if a database access error occursgetTypeMap()
public String getCommand()
RowSet
object's command property.
The command property contains a command string, which must be an SQL
query, that can be executed to fill the rowset with data.
The default value is null
.
null
setCommand(java.lang.String)
public void setCommand(String cmd) throws SQLException
RowSet
object's command property to the given
SQL query.
This property is optional
when a rowset gets its data from a data source that does not support
commands, such as a spreadsheet.
cmd
- the SQL query that will be used to get the data for this
RowSet
object; may be null
SQLException
- if a database access error occursgetCommand()
public boolean isReadOnly()
RowSet
object is read-only.
If updates are possible, the default is for a rowset to be
updatable.
Attempts to update a read-only rowset will result in an
SQLException
being thrown.
true
if this RowSet
object is
read-only; false
if it is updatablesetReadOnly(boolean)
public void setReadOnly(boolean value) throws SQLException
RowSet
object is read-only to the
given boolean
.
value
- true
if read-only; false
if
updatable
SQLException
- if a database access error occursisReadOnly()
public int getMaxFieldSize() throws SQLException
BINARY
,
VARBINARY
, LONGVARBINARYBINARY
, CHAR
,
VARCHAR
, and LONGVARCHAR
columns.
If the limit is exceeded, the excess data is silently discarded.
SQLException
- if a database access error occurssetMaxFieldSize(int)
public void setMaxFieldSize(int max) throws SQLException
BINARY
,
VARBINARY
, LONGVARBINARYBINARY
, CHAR
,
VARCHAR
, and LONGVARCHAR
columns.
If the limit is exceeded, the excess data is silently discarded.
For maximum portability, use values greater than 256.
max
- the new max column size limit in bytes; zero means unlimited
SQLException
- if a database access error occursgetMaxFieldSize()
public int getMaxRows() throws SQLException
RowSet
object can contain.
If the limit is exceeded, the excess rows are silently dropped.
RowSet
object can contain; zero means unlimited
SQLException
- if a database access error occurssetMaxRows(int)
public void setMaxRows(int max) throws SQLException
RowSet
object can contain to the specified number.
If the limit is exceeded, the excess rows are silently dropped.
max
- the new maximum number of rows; zero means unlimited
SQLException
- if a database access error occursgetMaxRows()
public boolean getEscapeProcessing() throws SQLException
RowSet
object.
If escape scanning is enabled, which is the default, the driver will do
escape substitution before sending an SQL statement to the database.
true
if escape processing is enabled;
false
if it is disabled
SQLException
- if a database access error occurssetEscapeProcessing(boolean)
public void setEscapeProcessing(boolean enable) throws SQLException
RowSet
object on or
off. If escape scanning is on (the default), the driver will do
escape substitution before sending an SQL statement to the database.
enable
- true
to enable escape processing;
false
to disable it
SQLException
- if a database access error occursgetEscapeProcessing()
public int getQueryTimeout() throws SQLException
SQLException
is thrown.
SQLException
- if a database access error occurssetQueryTimeout(int)
public void setQueryTimeout(int seconds) throws SQLException
SQLException
is thrown.
seconds
- the new query timeout limit in seconds; zero means
that there is no limit
SQLException
- if a database access error occursgetQueryTimeout()
public void setType(int type) throws SQLException
RowSet
object to the given type.
This method is used to change the type of a rowset, which is by
default read-only and non-scrollable.
type
- one of the ResultSet
constants specifying a type:
ResultSet.TYPE_FORWARD_ONLY
,
ResultSet.TYPE_SCROLL_INSENSITIVE
, or
ResultSet.TYPE_SCROLL_SENSITIVE
SQLException
- if a database access error occursResultSet.getType()
public void setConcurrency(int concurrency) throws SQLException
RowSet
object to the given
concurrency level. This method is used to change the concurrency level
of a rowset, which is by default ResultSet.CONCUR_READ_ONLY
concurrency
- one of the ResultSet
constants specifying a
concurrency level: ResultSet.CONCUR_READ_ONLY
or
ResultSet.CONCUR_UPDATABLE
SQLException
- if a database access error occursResultSet.getConcurrency()
public void setNull(int parameterIndex, int sqlType) throws SQLException
RowSet
object's SQL
command to SQL NULL
.
Note: You must specify the parameter's SQL type.
parameterIndex
- the first parameter is 1, the second is 2, ...sqlType
- a SQL type code defined by java.sql.Types
SQLException
- if a database access error occurspublic void setNull(int paramIndex, int sqlType, String typeName) throws SQLException
RowSet
object's SQL
command to SQL NULL
. This version of the method setNull
should be used for SQL user-defined types (UDTs) and REF
type
parameters. Examples of UDTs include: STRUCT
, DISTINCT
,
JAVA_OBJECT
, and named array types.
Note: To be portable, applications must give the
SQL type code and the fully qualified SQL type name when specifying
a NULL UDT or REF
parameter. In the case of a UDT,
the name is the type name of the parameter itself. For a REF
parameter, the name is the type name of the referenced type. If
a JDBC driver does not need the type code or type name information,
it may ignore it.
Although it is intended for UDT and REF
parameters,
this method may be used to set a null parameter of any JDBC type.
If the parameter does not have a user-defined or REF
type,
the typeName parameter is ignored.
paramIndex
- the first parameter is 1, the second is 2, ...sqlType
- a value from java.sql.Types
typeName
- the fully qualified name of an SQL UDT or the type
name of the SQL structured type being referenced by a REF
type; ignored if the parameter is not a UDT or REF
type
SQLException
- if a database access error occurspublic void setBoolean(int parameterIndex, boolean x) throws SQLException
RowSet
object's command
to the given Java boolean
value. The driver converts this to
an SQL BIT
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setByte(int parameterIndex, byte x) throws SQLException
RowSet
object's command
to the given Java byte
value. The driver converts this to
an SQL TINYINT
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setShort(int parameterIndex, short x) throws SQLException
RowSet
object's command
to the given Java short
value. The driver converts this to
an SQL SMALLINT
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setInt(int parameterIndex, int x) throws SQLException
RowSet
object's command
to the given Java int
value. The driver converts this to
an SQL INTEGER
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setLong(int parameterIndex, long x) throws SQLException
RowSet
object's command
to the given Java long
value. The driver converts this to
an SQL BIGINT
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setFloat(int parameterIndex, float x) throws SQLException
RowSet
object's command
to the given Java float
value. The driver converts this to
an SQL REAL
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setDouble(int parameterIndex, double x) throws SQLException
RowSet
object's command
to the given Java double
value. The driver converts this to
an SQL DOUBLE
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException
RowSet
object's command
to the given java.math.BigDeciaml
value.
The driver converts this to
an SQL NUMERIC
value before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setString(int parameterIndex, String x) throws SQLException
RowSet
object's command
to the given Java String
value. Before sending it to the
database, the driver converts this to an SQL VARCHAR
or
LONGVARCHAR
value, depending on the argument's size relative
to the driver's limits on VARCHAR
values.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setBytes(int parameterIndex, byte[] x) throws SQLException
RowSet
object's command
to the given Java array of byte
values. Before sending it to the
database, the driver converts this to an SQL VARBINARY
or
LONGVARBINARY
value, depending on the argument's size relative
to the driver's limits on VARBINARY
values.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setDate(int parameterIndex, Date x) throws SQLException
RowSet
object's command
to the given java.sql.Date
value. The driver converts this to
an SQL DATE
value before sending it to the database, using the
default java.util.Calendar
to calculate the date.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setTime(int parameterIndex, Time x) throws SQLException
RowSet
object's command
to the given java.sql.Time
value. The driver converts this to
an SQL TIME
value before sending it to the database, using the
default java.util.Calendar
to calculate it.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setTimestamp(int parameterIndex, Timestamp x) throws SQLException
RowSet
object's command
to the given java.sql.Timestamp
value. The driver converts this to
an SQL TIMESTAMP
value before sending it to the database, using the
default java.util.Calendar
to calculate it.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter value
SQLException
- if a database access error occurspublic void setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException
RowSet
object's command
to the given java.io.InputStream
value.
It may be more practical to send a very large ASCII value via a
java.io.InputStream
rather than as a LONGVARCHAR
parameter. The driver will read the data from the stream
as needed until it reaches end-of-file.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the Java input stream that contains the ASCII parameter valuelength
- the number of bytes in the stream
SQLException
- if a database access error occurspublic void setBinaryStream(int parameterIndex, InputStream x, int length) throws SQLException
RowSet
object's command
to the given java.io.InputStream
value.
It may be more practical to send a very large binary value via a
java.io.InputStream
rather than as a LONGVARBINARY
parameter. The driver will read the data from the stream
as needed until it reaches end-of-file.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the java input stream which contains the binary parameter valuelength
- the number of bytes in the stream
SQLException
- if a database access error occurspublic void setCharacterStream(int parameterIndex, Reader reader, int length) throws SQLException
RowSet
object's command
to the given java.io.Reader
value.
It may be more practical to send a very large UNICODE value via a
java.io.Reader
rather than as a LONGVARCHAR
parameter. The driver will read the data from the stream
as needed until it reaches end-of-file.
Note: This stream object can either be a standard Java stream object or your own subclass that implements the standard interface.
parameterIndex
- the first parameter is 1, the second is 2, ...reader
- the Reader
object that contains the UNICODE data
to be setlength
- the number of characters in the stream
SQLException
- if a database access error occurspublic void setObject(int parameterIndex, Object x, int targetSqlType, int scale) throws SQLException
RowSet
object's command
with the given Java Object
. For integral values, the
java.lang
equivalent objects should be used (for example,
an instance of the class Integer
for an int
).
The given Java object will be converted to the targetSqlType before being sent to the database.
If the object is of a class implementing SQLData
,
the rowset should call the method SQLData.writeSQL
to write the object to an SQLOutput
data stream.
If the object is an instance of a class implementing the Ref
,
Struct
, Array
, Blob
,
or Clob
interfaces,
the driver uses the default mapping to the corresponding SQL type.
Note that this method may be used to pass datatabase-specific abstract data types.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the object containing the input parameter valuetargetSqlType
- the SQL type (as defined in java.sql.Types
)
to be sent to the database. The scale argument may further qualify this
type.scale
- for java.sql.Types.DECIMAL
or
java.sql.Types.NUMERIC
types, this is the number of
digits after the decimal point. For all other types, this value
will be ignored.
SQLException
- if a database access error occursTypes
public void setObject(int parameterIndex, Object x, int targetSqlType) throws SQLException
RowSet
object's command
with a Java Object
. For integral values, the
java.lang
equivalent objects should be used.
This method is like setObject
above, but the scale used is the scale
of the second parameter. Scalar values have a scale of zero. Literal
values have the scale present in the literal.
Even though it is supported, it is not recommended that this method be called with floating point input values.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the object containing the input parameter valuetargetSqlType
- the SQL type (as defined in java.sql.Types
)
to be sent to the database
SQLException
- if a database access error occurspublic void setObject(int parameterIndex, Object x) throws SQLException
RowSet
object's command
with a Java Object
. For integral values, the
java.lang
equivalent objects should be used.
The JDBC specification provides a standard mapping from Java Object types to SQL types. The driver will convert the given Java object to its standard SQL mapping before sending it to the database.
Note that this method may be used to pass datatabase-specific
abstract data types by using a driver-specific Java type.
If the object is of a class implementing SQLData
,
the rowset should call the method SQLData.writeSQL
to write the object to an SQLOutput
data stream.
If the object is an instance of a class implementing the Ref
,
Struct
, Array
, Blob
,
or Clob
interfaces,
the driver uses the default mapping to the corresponding SQL type.
An exception is thrown if there is an ambiguity, for example, if the object is of a class implementing more than one of these interfaces.
parameterIndex
- The first parameter is 1, the second is 2, ...x
- The object containing the input parameter value
SQLException
- if a database access error occurspublic void setRef(int i, Ref x) throws SQLException
RowSet
object's command
with the given Ref
value. The driver will convert this
to the appropriate REF(<structured-type>)
value.
i
- the first parameter is 1, the second is 2, ...x
- an object representing data of an SQL REF
type
SQLException
- if a database access error occurspublic void setBlob(int i, Blob x) throws SQLException
RowSet
object's command
with the given Blob
value. The driver will convert this
to the BLOB
value that the Blob
object
represents before sending it to the database.
i
- the first parameter is 1, the second is 2, ...x
- an object representing a BLOB
SQLException
- if a database access error occurspublic void setClob(int i, Clob x) throws SQLException
RowSet
object's command
with the given Clob
value. The driver will convert this
to the CLOB
value that the Clob
object
represents before sending it to the database.
i
- the first parameter is 1, the second is 2, ...x
- an object representing a CLOB
SQLException
- if a database access error occurspublic void setArray(int i, Array x) throws SQLException
RowSet
object's command
with the given Array
value. The driver will convert this
to the ARRAY
value that the Array
object
represents before sending it to the database.
i
- the first parameter is 1, the second is 2, ...x
- an object representing an SQL array
SQLException
- if a database access error occurspublic void setDate(int parameterIndex, Date x, Calendar cal) throws SQLException
RowSet
object's command
with the given java.sql.Date
value. The driver will convert this
to an SQL DATE
value, using the given java.util.Calendar
object to calculate the date.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter valuecal
- the java.util.Calendar
object to use for calculating the date
SQLException
- if a database access error occurspublic void setTime(int parameterIndex, Time x, Calendar cal) throws SQLException
RowSet
object's command
with the given java.sql.Time
value. The driver will convert this
to an SQL TIME
value, using the given java.util.Calendar
object to calculate it, before sending it to the database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter valuecal
- the java.util.Calendar
object to use for calculating the time
SQLException
- if a database access error occurspublic void setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException
RowSet
object's command
with the given java.sql.Timestamp
value. The driver will
convert this to an SQL TIMESTAMP
value, using the given
java.util.Calendar
object to calculate it, before sending it to the
database.
parameterIndex
- the first parameter is 1, the second is 2, ...x
- the parameter valuecal
- the java.util.Calendar
object to use for calculating the
timestamp
SQLException
- if a database access error occurspublic void clearParameters() throws SQLException
RowSet
object's command.
In general, parameter values remain in force for repeated use of a
RowSet
object. Setting a parameter value automatically clears its
previous value. However, in some cases it is useful to immediately
release the resources used by the current parameter values, which can
be done by calling the method clearParameters
.
SQLException
- if a database access error occurspublic void execute() throws SQLException
RowSet
object with data.
The execute
method may use the following properties
to create a connection for reading data: url, data source name,
user name, password, transaction isolation, and type map.
The execute
method may use the following properties
to create a statement to execute a command:
command, read only, maximum field size,
maximum rows, escape processing, and query timeout.
If the required properties have not been set, an exception is thrown. If this method is successful, the current contents of the rowset are discarded and the rowset's metadata is also (re)set. If there are outstanding updates, they are ignored.
If this RowSet
object does not maintain a continuous connection
with its source of data, it may use a reader (a RowSetReader
object) to fill itself with data. In this case, a reader will have been
registered with this RowSet
object, and the method
execute
will call on the reader's readData
method as part of its implementation.
SQLException
- if a database access error occurs or any of the
properties necessary for making a connection and creating
a statement have not been setpublic void addRowSetListener(RowSetListener listener)
RowSet
object.
listener
- a component that has implemented the RowSetListener
interface and wants to be notified when events occur on this
RowSet
objectremoveRowSetListener(javax.sql.RowSetListener)
public void removeRowSetListener(RowSetListener listener)
RowSet
object.
listener
- a component that has been registered as a listener for this
RowSet
objectaddRowSetListener(javax.sql.RowSetListener)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |