Module java.sql
Package java.sql

Interface SQLOutput

All Known Implementing Classes:
SQLOutputImpl

public interfaceSQLOutput
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 interfaceSQLData is passed as an argument to an SQL statement, the JDBC driver calls the methodSQLData.getSQLType to determine the kind of SQL datum being passed to the database. The driver then creates an instance ofSQLOutput and passes it to the methodSQLData.writeSQL. The methodwriteSQL in turn calls the appropriateSQLOutputwriter methodswriteBoolean,writeCharacterStream, and so on) to write data from theSQLData object to theSQLOutput output stream as the representation of an SQL user-defined type.

Since:
1.2
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Writes an SQLARRAY value to the stream.
    void
    Writes the next attribute to the stream as a stream of ASCII characters.
    void
    Writes the next attribute to the stream as a java.math.BigDecimal object.
    void
    Writes the next attribute to the stream as a stream of uninterpreted bytes.
    void
    Writes an SQLBLOB value to the stream.
    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
    Writes the next attribute to the stream as a stream of Unicode characters.
    void
    Writes an SQLCLOB value to the stream.
    void
    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
    Writes an SQLNCLOB value to the stream.
    void
    Writes the next attribute to the stream as aString in the Java programming language.
    default void
    writeObject(Object x,SQLType targetSqlType)
    Writes to the stream the data contained in the given object.
    void
    Writes to the stream the data contained in the givenSQLData object.
    void
    Writes an SQLREF value to the stream.
    void
    Writes an SQLROWID value to the stream.
    void
    writeShort(short x)
    Writes the next attribute to the stream as a Java short.
    void
    Writes an SQLXML value to the stream.
    void
    Writes the next attribute to the stream as aString in the Java programming language.
    void
    Writes an SQL structured type value to the stream.
    void
    Writes the next attribute to the stream as a java.sql.Time object.
    void
    Writes the next attribute to the stream as a java.sql.Timestamp object.
    void
    Writes a SQLDATALINK value to the stream.
  • Method Details

    • writeString

      void writeString(String x) throwsSQLException
      Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java boolean. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java byte. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java short. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java int. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java long. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java float. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a Java double. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a java.math.BigDecimal object. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as an array of bytes. Writes the next attribute to the stream as aString 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) throwsSQLException
      Writes the next attribute to the stream as a java.sql.Date object. Writes the next attribute to the stream as ajava.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) throwsSQLException
      Writes the next attribute to the stream as a java.sql.Time object. Writes the next attribute to the stream as ajava.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) throwsSQLException
      Writes the next attribute to the stream as a java.sql.Timestamp object. Writes the next attribute to the stream as ajava.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) throwsSQLException
      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) throwsSQLException
      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) throwsSQLException
      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) throwsSQLException
      Writes to the stream the data contained in the givenSQLData object. When theSQLData object isnull, this method writes an SQLNULL to the stream. Otherwise, it calls theSQLData.writeSQL method of the given object, which writes the object's attributes to the stream. The implementation of the methodSQLData.writeSQL calls the appropriateSQLOutput writer method(s) for writing each of the object's attributes in order. The attributes must be read from anSQLInput input stream and written to anSQLOutput 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) throwsSQLException
      Writes an SQLREF value to the stream.
      Parameters:
      x - aRef object representing data of an SQLREF value
      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) throwsSQLException
      Writes an SQLBLOB value to the stream.
      Parameters:
      x - aBlob object representing data of an SQLBLOB value
      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) throwsSQLException
      Writes an SQLCLOB value to the stream.
      Parameters:
      x - aClob object representing data of an SQLCLOB value
      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) throwsSQLException
      Writes an SQL structured type value to the stream.
      Parameters:
      x - aStruct object 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) throwsSQLException
      Writes an SQLARRAY value to the stream.
      Parameters:
      x - anArray object representing data of an SQLARRAY type
      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) throwsSQLException
      Writes a SQLDATALINK value to the stream.
      Parameters:
      x - ajava.net.URL object 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) throwsSQLException
      Writes the next attribute to the stream as aString in the Java programming language. The driver converts this to a SQLNCHAR orNVARCHAR orLONGNVARCHAR value (depending on the argument's size relative to the driver's limits onNVARCHAR 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) throwsSQLException
      Writes an SQLNCLOB value to the stream.
      Parameters:
      x - aNClob object representing data of an SQLNCLOB value
      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) throwsSQLException
      Writes an SQLROWID value to the stream.
      Parameters:
      x - aRowId object representing data of an SQLROWID value
      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) throwsSQLException
      Writes an SQLXML value to the stream.
      Parameters:
      x - aSQLXML object representing data of an SQLXML value
      Throws:
      SQLException - if a database access error occurs, thejava.xml.transform.Result,Writer orOutputStream has not been closed for theSQLXML object or if there is an error processing the XML value. ThegetCause method 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) throwsSQLException
      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 theobject isnull, this method writes an SQLNULL to the stream.

      If the object has a custom mapping (is of a class implementing the interfaceSQLData), the JDBC driver should call the methodSQLData.writeSQL to write it to the SQL data stream. If, on the other hand, the object is of a class implementingRef,Blob,Clob,NClob,Struct,java.net.URL, orArray, the driver should pass it to the database as a value of the corresponding SQL type.

      The default implementation will throwSQLFeatureNotSupportedException

      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: