- 所有已知的实现类:
SQLOutputImpl
public interface SQLOutput
用于将用户定义类型的属性写回数据库的输出流。此接口仅用于自定义映射,由驱动程序使用,其方法永远不会被程序员直接调用。
当实现接口 SQLData 的类的对象作为参数传递给 SQL 语句时,JDBC 驱动程序调用方法 SQLData.getSQLType 来确定传递给数据库的 SQL 数据类型。然后,驱动程序创建 SQLOutput 的实例并将其传递给方法 SQLData.writeSQL。 writeSQL 方法依次调用相应的 SQLOutputwriter方法 writeBoolean、writeCharacterStream 等)将数据从 SQLData 对象写入 SQLOutput 输出流作为 SQL 用户定义类型的表示。
- 自从:
- 1.2
-
方法总结
修饰符和类型方法描述voidwriteArray(Array x) 将 SQLARRAY值写入流。void将下一个属性作为 ASCII 字符流写入流。void将下一个属性作为 java.math.BigDecimal 对象写入流。void将下一个属性作为未解释字节流写入流。void将 SQLBLOB值写入流。voidwriteBoolean(boolean x) 将下一个属性作为 Java boolean写入流。voidwriteByte(byte x) 将下一个属性作为 Java 字节写入流。voidwriteBytes(byte[] x) 将下一个属性作为字节数组写入流。void将下一个属性作为 Unicode 字符流写入流。void将 SQLCLOB值写入流。void将下一个属性作为 java.sql.Date 对象写入流。voidwriteDouble(double x) 将下一个属性作为 Java 双精度值写入流。voidwriteFloat(float x) 将下一个属性作为 Java 浮点数写入流。voidwriteInt(int x) 将下一个属性作为 Java int 写入流。voidwriteLong(long x) 将下一个属性作为 Java long 写入流。voidwriteNClob(NClob x) 将 SQLNCLOB值写入流。void将下一个属性作为 Java 编程语言中的String写入流。default voidwriteObject(Object x, SQLType targetSqlType) 将给定对象中包含的数据写入流。void将给定SQLData对象中包含的数据写入流。void将 SQLREF值写入流。voidwriteRowId(RowId x) 将 SQLROWID值写入流。voidwriteShort(short x) 将下一个属性作为 Java short 写入流。void将 SQLXML值写入流。void将下一个属性作为 Java 编程语言中的String写入流。void将 SQL 结构化类型值写入流。void将下一个属性作为 java.sql.Time 对象写入流。void将下一个属性作为 java.sql.Timestamp 对象写入流。void将 SQLDATALINK值写入流。
-
方法详情
-
writeString
将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeBoolean
将下一个属性作为 Java boolean写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeByte
将下一个属性作为 Java 字节写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeShort
将下一个属性作为 Java short 写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeInt
将下一个属性作为 Java int 写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeLong
将下一个属性作为 Java long 写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeFloat
将下一个属性作为 Java 浮点数写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeDouble
将下一个属性作为 Java 双精度值写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeBigDecimal
将下一个属性作为 java.math.BigDecimal 对象写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeBytes
将下一个属性作为字节数组写入流。将下一个属性作为 Java 编程语言中的String写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeDate
将下一个属性作为 java.sql.Date 对象写入流。将下一个属性作为 Java 编程语言中的java.sql.Date对象写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeTime
将下一个属性作为 java.sql.Time 对象写入流。将下一个属性作为 Java 编程语言中的java.sql.Date对象写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeTimestamp
将下一个属性作为 java.sql.Timestamp 对象写入流。将下一个属性作为 Java 编程语言中的java.sql.Date对象写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeCharacterStream
将下一个属性作为 Unicode 字符流写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeAsciiStream
将下一个属性作为 ASCII 字符流写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeBinaryStream
将下一个属性作为未解释字节流写入流。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeObject
将给定SQLData对象中包含的数据写入流。当SQLData对象为null时,此方法将 SQLNULL写入流。否则,它调用给定对象的SQLData.writeSQL方法,该方法将对象的属性写入流。SQLData.writeSQL方法的实现调用适当的SQLOutput编写器方法来按顺序写入每个对象的属性。这些属性必须从SQLInput输入流中读取,并按照它们在用户定义类型的 SQL 定义中列出的相同顺序写入SQLOutput输出流。- 参数:
x- 表示 SQL 结构化或不同类型数据的对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeRef
将 SQLREF值写入流。- 参数:
x- 代表 SQLREF值数据的Ref对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeBlob
将 SQLBLOB值写入流。- 参数:
x- 代表 SQLBLOB值数据的Blob对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeClob
将 SQLCLOB值写入流。- 参数:
x- 代表 SQLCLOB值数据的Clob对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeStruct
将 SQL 结构化类型值写入流。- 参数:
x- 代表 SQL 结构类型数据的Struct对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeArray
将 SQLARRAY值写入流。- 参数:
x- 代表 SQLARRAY类型数据的Array对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.2
-
writeURL
将 SQLDATALINK值写入流。- 参数:
x- 代表 SQL DATALINK 类型数据的java.net.URL对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.4
-
writeNString
将下一个属性作为 Java 编程语言中的String写入流。驱动程序将它发送到流时将其转换为 SQLNCHAR或NVARCHAR或LONGNVARCHAR值(取决于参数的大小相对于驱动程序对NVARCHAR值的限制)。- 参数:
x- 传递给数据库的值- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.6
-
writeNClob
将 SQLNCLOB值写入流。- 参数:
x- 代表 SQLNCLOB值数据的NClob对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.6
-
writeRowId
将 SQLROWID值写入流。- 参数:
x- 代表 SQLROWID值数据的RowId对象- 抛出:
SQLException- 如果发生数据库访问错误SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.6
-
writeSQLXML
将 SQLXML值写入流。- 参数:
x- 代表 SQLXML值数据的SQLXML对象- 抛出:
SQLException- 如果发生数据库访问错误,java.xml.transform.Result、Writer或OutputStream尚未为SQLXML对象关闭,或者处理 XML 值时出现错误。异常的getCause方法可能会提供更详细的异常,例如,如果流不包含有效的 XML。SQLFeatureNotSupportedException- 如果 JDBC 驱动程序不支持此方法- 自从:
- 1.6
-
writeObject
将给定对象中包含的数据写入流。在发送到流之前,对象将被转换为指定的 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
- 参见:
-