-
- 所有已知实现类:
-
SQLOutputImpl
public interface SQLOutput用于将用户定义类型的属性写回数据库的输出流。 此接口仅用于自定义映射,由驱动程序使用,其方法永远不会被程序员直接调用。当实现接口
SQLData的类的对象作为参数传递给SQL语句时,JDBC驱动程序调用方法SQLData.getSQLType来确定传递给数据库的SQL数据的类型。 然后,驱动程序创建SQLOutput的实例,并将其传递给方法SQLData.writeSQL。 该方法writeSQL依次调用适当SQLOutput作家方法writeBoolean,writeCharacterStream,等等),以写入从数据SQLData对象到SQLOutput输出流作为SQL用户定义类型的表示。- 从以下版本开始:
- 1.2
-
-
方法摘要
所有方法 实例方法 抽象方法 Default Methods 变量和类型 方法 描述 voidwriteArray(Array x)将SQLARRAY值写入流。voidwriteAsciiStream(InputStream x)将下一个属性作为ASCII字符流写入流中。voidwriteBigDecimal(BigDecimal x)将下一个属性作为java.math.BigDecimal对象写入流中。voidwriteBinaryStream(InputStream x)将下一个属性作为未解释字节流写入流中。voidwriteBlob(Blob x)将SQLBLOB值写入流。voidwriteBoolean(boolean x)将下一个属性作为Java布尔值写入流中。voidwriteByte(byte x)将下一个属性作为Java字节写入流中。voidwriteBytes(byte[] x)将下一个属性作为字节数组写入流中。voidwriteCharacterStream(Reader x)将下一个属性作为Unicode字符流写入流中。voidwriteClob(Clob x)将SQLCLOB值写入流。voidwriteDate(Date x)将下一个属性作为java.sql.Date对象写入流中。voidwriteDouble(double x)将下一个属性作为Java double写入流中。voidwriteFloat(float x)将下一个属性作为Java float写入流中。voidwriteInt(int x)将下一个属性作为Java int写入流中。voidwriteLong(long x)将下一个属性作为Java long写入流中。voidwriteNClob(NClob x)将SQLNCLOB值写入流。voidwriteNString(String x)将下一个属性作为Java编程语言中的String写入流中。default voidwriteObject(Object x, SQLType targetSqlType)将包含在给定对象中的数据写入流。voidwriteObject(SQLData x)将给定SQLData对象中包含的数据写入流。voidwriteRef(Ref x)将SQLREF值写入流。voidwriteRowId(RowId x)将SQLROWID值写入流。voidwriteShort(short x)将下一个属性作为Java short写入流中。voidwriteSQLXML(SQLXML x)将SQLXML值写入流。voidwriteString(String x)将下一个属性作为Java编程语言中的String写入流中。voidwriteStruct(Struct x)将SQL结构类型值写入流。voidwriteTime(Time x)将下一个属性作为java.sql.Time对象写入流中。voidwriteTimestamp(Timestamp x)将下一个属性作为java.sql.Timestamp对象写入流中。voidwriteURL(URL x)将SQLDATALINK值写入流。
-
-
-
方法详细信息
-
writeString
void writeString(String x) throws SQLException
将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeBoolean
void writeBoolean(boolean x) throws SQLException将下一个属性作为Java布尔值写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeByte
void writeByte(byte x) throws SQLException将下一个属性作为Java字节写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeShort
void writeShort(short x) throws SQLException将下一个属性作为Java short写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeInt
void writeInt(int x) throws SQLException将下一个属性作为Java int写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeLong
void writeLong(long x) throws SQLException将下一个属性作为Java long写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeFloat
void writeFloat(float x) throws SQLException将下一个属性作为Java float写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeDouble
void writeDouble(double x) throws SQLException将下一个属性作为Java double写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeBigDecimal
void writeBigDecimal(BigDecimal x) throws SQLException
将下一个属性作为java.math.BigDecimal对象写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeBytes
void writeBytes(byte[] x) throws SQLException将下一个属性作为字节数组写入流中。 将下一个属性作为Java编程语言中的String写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeDate
void writeDate(Date x) throws SQLException
将下一个属性作为java.sql.Date对象写入流中。 将下一个属性作为Java编程语言中的java.sql.Date对象写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeTime
void writeTime(Time x) throws SQLException
将下一个属性作为java.sql.Time对象写入流中。 将下一个属性作为Java编程语言中的java.sql.Date对象写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeTimestamp
void writeTimestamp(Timestamp x) throws SQLException
将下一个属性作为java.sql.Timestamp对象写入流中。 将下一个属性作为Java编程语言中的java.sql.Date对象写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeCharacterStream
void writeCharacterStream(Reader x) throws SQLException
将下一个属性作为Unicode字符流写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeAsciiStream
void writeAsciiStream(InputStream x) throws SQLException
将下一个属性作为ASCII字符流写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeBinaryStream
void writeBinaryStream(InputStream x) throws SQLException
将下一个属性作为未解释字节流写入流中。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeObject
void writeObject(SQLData x) throws SQLException
将给定SQLData对象中包含的数据写入流。 当SQLData对象是null,此方法将SQLNULL写入流。 否则,它调用给定对象的SQLData.writeSQL方法,该方法将对象的属性写入流。 方法SQLData.writeSQL的实现调用适当的SQLOutput方法以按顺序写入每个对象的属性。 必须从SQLInput输入流中读取属性,并按照用户定义类型的SQL定义中列出的顺序将其写入SQLOutput输出流。- 参数
-
x- 表示SQL结构化或不同类型的数据的对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeRef
void writeRef(Ref x) throws SQLException
将SQLREF值写入流。- 参数
-
x- 表示SQLREF值的数据的Ref对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeBlob
void writeBlob(Blob x) throws SQLException
将SQLBLOB值写入流。- 参数
-
x- 表示SQLBLOB值的数据的Blob对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeClob
void writeClob(Clob x) throws SQLException
将SQLCLOB值写入流。- 参数
-
x- 表示SQLCLOB值的数据的Clob对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeStruct
void writeStruct(Struct x) throws SQLException
将SQL结构类型值写入流。- 参数
-
x- 表示SQL结构类型数据的Struct对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeArray
void writeArray(Array x) throws SQLException
将SQLARRAY值写入流。- 参数
-
x- 表示SQLARRAY类型数据的Array对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.2
-
writeURL
void writeURL(URL x) throws SQLException
将SQLDATALINK值写入流。- 参数
-
x- 表示SQL DATALINK类型数据的java.net.URL对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.4
-
writeNString
void writeNString(String x) throws SQLException
将下一个属性作为Java编程语言中的String写入流中。 当驱动程序将其发送到流时,驱动程序将其转换为SQLNCHAR或NVARCHAR或LONGNVARCHAR值(取决于参数的大小相对于驱动程序对NVARCHAR值的限制)。- 参数
-
x- 要传递给数据库的值 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.6
-
writeNClob
void writeNClob(NClob x) throws SQLException
将SQLNCLOB值写入流。- 参数
-
x- 表示SQLNCLOB值的数据的NClob对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.6
-
writeRowId
void writeRowId(RowId x) throws SQLException
将SQLROWID值写入流。- 参数
-
x- 表示SQLROWID值的数据的RowId对象 - 异常
-
SQLException- 如果发生数据库访问错误 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.6
-
writeSQLXML
void writeSQLXML(SQLXML x) throws SQLException
将SQLXML值写入流。- 参数
-
x- 表示SQLXML值的数据的SQLXML对象 - 异常
-
SQLException-如果发生数据库访问错误,java.xml.transform.Result,Writer或OutputStream尚未收为SQLXML对象或者如果存在一个错误处理XML值。 异常的getCause方法可能会提供更详细的异常,例如,如果流不包含有效的XML。 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此方法 - 从以下版本开始:
- 1.6
-
writeObject
default void writeObject(Object x, SQLType targetSqlType) throws SQLException
将包含在给定对象中的数据写入流。 在将对象发送到流之前,该对象将转换为指定的targetSqlType。当
object是null,此方法将SQLNULL写入流。如果对象具有自定义映射(是实现接口
SQLData的类),则JDBC驱动程序应调用方法SQLData.writeSQL将其写入SQL数据流。 如果,在另一方面,对象是实现一类的Ref,Blob,Clob,NClob,Struct,java.net.URL,或Array,驾驶员应把它传递给数据库作为相应SQL类型的值。默认实现将抛出
SQLFeatureNotSupportedException- 参数
-
x- 包含输入参数值的对象 -
targetSqlType- 要发送到数据库的SQL类型。 - 异常
-
SQLException- 如果发生数据库访问错误或者x指定的Java对象是InputStream或Reader对象且scale参数的值小于零 -
SQLFeatureNotSupportedException- 如果JDBC驱动程序不支持此数据类型 - 从以下版本开始:
- 1.8
- 另请参见:
-
JDBCType,SQLType
-
-