Interface SQLOutput
- All Known Implementing Classes:
SQLOutputImpl
public interface SQLOutput
The output stream for writing the attributes of a user-defined type back to the database. This interface, used only for custom mapping, is used by the driver, and its methods are never directly invoked by a programmer.
When an object of a class implementing the interface SQLData is passed as an argument to an SQL statement, the JDBC driver calls the method SQLData.getSQLType to determine the kind of SQL datum being passed to the database. The driver then creates an instance of SQLOutput and passes it to the method SQLData.writeSQL. The method writeSQL in turn calls the appropriate SQLOutput writer methods writeBoolean, writeCharacterStream, and so on) to write data from the SQLData object to the SQLOutput output stream as the representation of an SQL user-defined type.
- Since:
- 1.2
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
void | writeArray(Array x) | Writes an SQL |
void | writeAsciiStream(InputStream x) | Writes the next attribute to the stream as a stream of ASCII characters. |
void | writeBigDecimal(BigDecimal x) | Writes the next attribute to the stream as a java.math.BigDecimal object. |
void | writeBinaryStream(InputStream x) | Writes the next attribute to the stream as a stream of uninterpreted bytes. |
void | writeBlob(Blob x) | Writes an SQL |
void | writeBoolean(boolean x) | Writes the next attribute to the stream as a Java boolean. |
void | writeByte(byte x) | Writes the next attribute to the stream as a Java byte. |
void | writeBytes(byte[] x) | Writes the next attribute to the stream as an array of bytes. |
void | writeCharacterStream(Reader x) | Writes the next attribute to the stream as a stream of Unicode characters. |
void | writeClob(Clob x) | Writes an SQL |
void | writeDate(Date x) | Writes the next attribute to the stream as a java.sql.Date object. |
void | writeDouble(double x) | Writes the next attribute to the stream as a Java double. |
void | writeFloat(float x) | Writes the next attribute to the stream as a Java float. |
void | writeInt(int x) | Writes the next attribute to the stream as a Java int. |
void | writeLong(long x) | Writes the next attribute to the stream as a Java long. |
void | writeNClob(NClob x) | Writes an SQL |
void | writeNString(String x) | Writes the next attribute to the stream as a |
default void | writeObject(Object x,
SQLType targetSqlType) | Writes to the stream the data contained in the given object. |
void | writeObject(SQLData x) | Writes to the stream the data contained in the given |
void | writeRef(Ref x) | Writes an SQL |
void | writeRowId(RowId x) | Writes an SQL |
void | writeShort(short x) | Writes the next attribute to the stream as a Java short. |
void | writeSQLXML(SQLXML x) | Writes an SQL |
void | writeString(String x) | Writes the next attribute to the stream as a |
void | writeStruct(Struct x) | Writes an SQL structured type value to the stream. |
void | writeTime(Time x) | Writes the next attribute to the stream as a java.sql.Time object. |
void | writeTimestamp(Timestamp x) | Writes the next attribute to the stream as a java.sql.Timestamp object. |
void | writeURL(URL x) | Writes a SQL |
Method Detail
writeString
void writeString(String x)
throws SQLException Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeBoolean
void writeBoolean(boolean x)
throws SQLException Writes the next attribute to the stream as a Java boolean. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeByte
void writeByte(byte x)
throws SQLException Writes the next attribute to the stream as a Java byte. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeShort
void writeShort(short x)
throws SQLException Writes the next attribute to the stream as a Java short. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeInt
void writeInt(int x)
throws SQLException Writes the next attribute to the stream as a Java int. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeLong
void writeLong(long x)
throws SQLException Writes the next attribute to the stream as a Java long. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeFloat
void writeFloat(float x)
throws SQLException Writes the next attribute to the stream as a Java float. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeDouble
void writeDouble(double x)
throws SQLException Writes the next attribute to the stream as a Java double. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeBigDecimal
void writeBigDecimal(BigDecimal x)
throws SQLException Writes the next attribute to the stream as a java.math.BigDecimal object. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeBytes
void writeBytes(byte[] x)
throws SQLException Writes the next attribute to the stream as an array of bytes. Writes the next attribute to the stream as a String in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeDate
void writeDate(Date x)
throws SQLException Writes the next attribute to the stream as a java.sql.Date object. Writes the next attribute to the stream as a java.sql.Date object in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeTime
void writeTime(Time x)
throws SQLException Writes the next attribute to the stream as a java.sql.Time object. Writes the next attribute to the stream as a java.sql.Date object in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeTimestamp
void writeTimestamp(Timestamp x)
throws SQLException Writes the next attribute to the stream as a java.sql.Timestamp object. Writes the next attribute to the stream as a java.sql.Date object in the Java programming language.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeCharacterStream
void writeCharacterStream(Reader x)
throws SQLException Writes the next attribute to the stream as a stream of Unicode characters.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeAsciiStream
void writeAsciiStream(InputStream x)
throws SQLException Writes the next attribute to the stream as a stream of ASCII characters.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeBinaryStream
void writeBinaryStream(InputStream x)
throws SQLException Writes the next attribute to the stream as a stream of uninterpreted bytes.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeObject
void writeObject(SQLData x)
throws SQLException Writes to the stream the data contained in the given SQLData object. When the SQLData object is null, this method writes an SQL NULL to the stream. Otherwise, it calls the SQLData.writeSQL method of the given object, which writes the object's attributes to the stream. The implementation of the method SQLData.writeSQL calls the appropriate SQLOutput writer method(s) for writing each of the object's attributes in order. The attributes must be read from an SQLInput input stream and written to an SQLOutput output stream in the same order in which they were listed in the SQL definition of the user-defined type.
- Parameters:
-
x- the object representing data of an SQL structured or distinct type - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeRef
void writeRef(Ref x)
throws SQLException Writes an SQL REF value to the stream.
- Parameters:
-
x- aRefobject representing data of an SQLREFvalue - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeBlob
void writeBlob(Blob x)
throws SQLException Writes an SQL BLOB value to the stream.
- Parameters:
-
x- aBlobobject representing data of an SQLBLOBvalue - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeClob
void writeClob(Clob x)
throws SQLException Writes an SQL CLOB value to the stream.
- Parameters:
-
x- aClobobject representing data of an SQLCLOBvalue - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeStruct
void writeStruct(Struct x)
throws SQLException Writes an SQL structured type value to the stream.
- Parameters:
-
x- aStructobject representing data of an SQL structured type - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeArray
void writeArray(Array x)
throws SQLException Writes an SQL ARRAY value to the stream.
- Parameters:
-
x- anArrayobject representing data of an SQLARRAYtype - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.2
writeURL
void writeURL(URL x)
throws SQLException Writes a SQL DATALINK value to the stream.
- Parameters:
-
x- ajava.net.URLobject representing the data of SQL DATALINK type - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.4
writeNString
void writeNString(String x)
throws SQLException Writes the next attribute to the stream as a String in the Java programming language. The driver converts this to a SQL NCHAR or NVARCHAR or LONGNVARCHAR value (depending on the argument's size relative to the driver's limits on NVARCHAR values) when it sends it to the stream.
- Parameters:
-
x- the value to pass to the database - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.6
writeNClob
void writeNClob(NClob x)
throws SQLException Writes an SQL NCLOB value to the stream.
- Parameters:
-
x- aNClobobject representing data of an SQLNCLOBvalue - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.6
writeRowId
void writeRowId(RowId x)
throws SQLException Writes an SQL ROWID value to the stream.
- Parameters:
-
x- aRowIdobject representing data of an SQLROWIDvalue - Throws:
-
SQLException- if a database access error occurs -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.6
writeSQLXML
void writeSQLXML(SQLXML x)
throws SQLException Writes an SQL XML value to the stream.
- Parameters:
-
x- aSQLXMLobject representing data of an SQLXMLvalue - Throws:
-
SQLException- if a database access error occurs, thejava.xml.transform.Result,WriterorOutputStreamhas not been closed for theSQLXMLobject or if there is an error processing the XML value. ThegetCausemethod of the exception may provide a more detailed exception, for example, if the stream does not contain valid XML. -
SQLFeatureNotSupportedException- if the JDBC driver does not support this method - Since:
- 1.6
writeObject
default void writeObject(Object x,
SQLType targetSqlType)
throws SQLException Writes to the stream the data contained in the given object. The object will be converted to the specified targetSqlType before being sent to the stream.
When the object is null, this method writes an SQL NULL to the stream.
If the object has a custom mapping (is of a class implementing the interface SQLData), the JDBC driver should call the method SQLData.writeSQL to write it to the SQL data stream. If, on the other hand, the object is of a class implementing Ref, Blob, Clob, NClob, Struct, java.net.URL, or Array, the driver should pass it to the database as a value of the corresponding SQL type.
The default implementation will throw SQLFeatureNotSupportedException
- Parameters:
-
x- the object containing the input parameter value -
targetSqlType- the SQL type to be sent to the database. - Throws:
-
SQLException- if a database access error occurs or if the Java Object specified by x is an InputStream or Reader object and the value of the scale parameter is less than zero -
SQLFeatureNotSupportedException- if the JDBC driver does not support this data type - Since:
- 1.8
- See Also:
-
JDBCType,SQLType