public interface Ref
REF
value, which is a reference to an SQL structured type value in the database.
SQL REF
values are stored in a table that contains
instances of a referenceable SQL structured type, and each REF
value is a unique identifier for one instance in that table.
An SQL REF
value may be used in place of the
SQL structured type it references, either as a column value in a
table or an attribute value in a structured type.
Because an SQL REF
value is a logical pointer to an
SQL structured type, a Ref
object is by default also a logical
pointer. Thus, retrieving an SQL REF
value as
a Ref
object does not materialize
the attributes of the structured type on the client.
A Ref
object can be stored in the database using the
PreparedStatement.setRef
method.
All methods on the Ref
interface must be fully implemented if the
JDBC driver supports the data type.
Struct
Modifier and Type | Method and Description |
---|---|
String |
getBaseTypeName()
Retrieves the fully-qualified SQL name of the SQL structured type that
this
Ref object references. |
Object |
getObject()
Retrieves the SQL structured type instance referenced by
this
Ref object. |
Object |
getObject(Map<String,Class<?>> map)
Retrieves the referenced object and maps it to a Java type
using the given type map.
|
void |
setObject(Object value)
Sets the structured type value that this
Ref
object references to the given instance of Object . |
String getBaseTypeName() throws SQLException
Ref
object references.SQLException
- if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support
this methodObject getObject(Map<String,Class<?>> map) throws SQLException
map
- a java.util.Map
object that contains
the mapping to use (the fully-qualified name of the SQL
structured type being referenced and the class object for
SQLData
implementation to which the SQL
structured type will be mapped)Object
that is the custom mapping for
the SQL structured type to which this Ref
object refersSQLException
- if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support
this methodsetObject(java.lang.Object)
Object getObject() throws SQLException
Ref
object. If the connection's type map has an entry
for the structured type, the instance will be custom mapped to
the Java class indicated in the type map. Otherwise, the
structured type instance will be mapped to a Struct
object.Object
that is the mapping for
the SQL structured type to which this Ref
object refersSQLException
- if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support
this methodsetObject(java.lang.Object)
void setObject(Object value) throws SQLException
Ref
object references to the given instance of Object
.
The driver converts this to an SQL structured type when it
sends it to the database.value
- an Object
representing the SQL
structured type instance that this
Ref
object will referenceSQLException
- if a database access error occursSQLFeatureNotSupportedException
- if the JDBC driver does not support
this methodgetObject()
,
getObject(Map)
,
PreparedStatement.setObject(int, Object)
,
CallableStatement.setObject(String, Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.