-
- 所有已知实现类:
-
SQLOutputImpl
public interface SQLOutput
用于将用户定义类型的属性写回数据库的输出流。 此接口仅用于自定义映射,由驱动程序使用,其方法永远不会被程序员直接调用。当实现接口
SQLData
的类的对象作为参数传递给SQL语句时,JDBC驱动程序调用方法SQLData.getSQLType
来确定传递给数据库的SQL数据的类型。 然后,驱动程序创建SQLOutput
的实例,并将其传递给方法SQLData.writeSQL
。 该方法writeSQL
依次调用适当SQLOutput
作家方法writeBoolean
,writeCharacterStream
,等等),以写入从数据SQLData
对象到SQLOutput
输出流作为SQL用户定义类型的表示。- 从以下版本开始:
- 1.2
-
-
方法摘要
所有方法 实例方法 抽象方法 Default Methods 变量和类型 方法 描述 void
writeArray(Array x)
将SQLARRAY
值写入流。void
writeAsciiStream(InputStream x)
将下一个属性作为ASCII字符流写入流中。void
writeBigDecimal(BigDecimal x)
将下一个属性作为java.math.BigDecimal对象写入流中。void
writeBinaryStream(InputStream x)
将下一个属性作为未解释字节流写入流中。void
writeBlob(Blob x)
将SQLBLOB
值写入流。void
writeBoolean(boolean x)
将下一个属性作为Java布尔值写入流中。void
writeByte(byte x)
将下一个属性作为Java字节写入流中。void
writeBytes(byte[] x)
将下一个属性作为字节数组写入流中。void
writeCharacterStream(Reader x)
将下一个属性作为Unicode字符流写入流中。void
writeClob(Clob x)
将SQLCLOB
值写入流。void
writeDate(Date x)
将下一个属性作为java.sql.Date对象写入流中。void
writeDouble(double x)
将下一个属性作为Java double写入流中。void
writeFloat(float x)
将下一个属性作为Java float写入流中。void
writeInt(int x)
将下一个属性作为Java int写入流中。void
writeLong(long x)
将下一个属性作为Java long写入流中。void
writeNClob(NClob x)
将SQLNCLOB
值写入流。void
writeNString(String x)
将下一个属性作为Java编程语言中的String
写入流中。default void
writeObject(Object x, SQLType targetSqlType)
将包含在给定对象中的数据写入流。void
writeObject(SQLData x)
将给定SQLData
对象中包含的数据写入流。void
writeRef(Ref x)
将SQLREF
值写入流。void
writeRowId(RowId x)
将SQLROWID
值写入流。void
writeShort(short x)
将下一个属性作为Java short写入流中。void
writeSQLXML(SQLXML x)
将SQLXML
值写入流。void
writeString(String x)
将下一个属性作为Java编程语言中的String
写入流中。void
writeStruct(Struct x)
将SQL结构类型值写入流。void
writeTime(Time x)
将下一个属性作为java.sql.Time对象写入流中。void
writeTimestamp(Timestamp x)
将下一个属性作为java.sql.Timestamp对象写入流中。void
writeURL(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
-
-