public class SQLOutputImpl extends Object implements SQLOutput
当应用程序调用方法PreparedStatement.setObject时,驱动程序将检查要写入的值是否是具有自定义映射的UDT。 如果是,在类型映射中将包含一个条目,该条目包含该UDT实现SQLData的类的类对象。 要写入的值为SQLData的实例,驱动程序将创建一个SQLOutputImpl的实例, SQLOutputImpl其传递给方法SQLData.writeSQL 。 方法writeSQL依次调用适当的SQLOutputImpl.writeXXX方法,将数据从SQLData对象写入SQLOutputImpl输出流,作为SQL用户定义类型的表示形式。
| Constructor and Description |
|---|
SQLOutputImpl(Vector<?> attributes, Map<String,?> map)
创建一个新的
SQLOutputImpl对象,用给定的属性向量初始化并输入map。
|
| Modifier and Type | Method and Description |
|---|---|
void |
writeArray(Array x)
将Java编程语言中的
Array对象写入此
SQLOutputImpl对象。
|
void |
writeAsciiStream(InputStream x)
将ASCII字符串写入此
SQLOutputImpl对象。
|
void |
writeBigDecimal(BigDecimal x)
将Java编程语言中的
java.math.BigDecimal对象写入此
SQLOutputImpl对象。
|
void |
writeBinaryStream(InputStream x)
将一串未解释的字节写入此
SQLOutputImpl对象。
|
void |
writeBlob(Blob x)
将Java编程语言中的
Blob对象写入此
SQLOutputImpl对象。
|
void |
writeBoolean(boolean x)
写一个
boolean在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeByte(byte x)
写一个
byte在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeBytes(byte[] x)
写入数组
bytes在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeCharacterStream(Reader x)
将Unicode字符串写入此
SQLOutputImpl对象。
|
void |
writeClob(Clob x)
将Java编程语言中的
Clob对象写入此
SQLOutputImpl对象。
|
void |
writeDate(Date x)
将Java编程语言中的
java.sql.Date对象写入此
SQLOutputImpl对象。
|
void |
writeDouble(double x)
写一个
double在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeFloat(float x)
写一个
float在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeInt(int x)
写入一个
int在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeLong(long x)
写一个
long在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeNClob(NClob x)
写入SQL
NCLOB值到流。
|
void |
writeNString(String x)
接下来的属性写入流为
String的Java编程语言。
|
void |
writeObject(SQLData x)
将数据写入给定的
SQLData对象中包含的数据。
|
void |
writeRef(Ref x)
将Java编程语言中的
Ref对象写入此
SQLOutputImpl对象。
|
void |
writeRowId(RowId x)
写入SQL
ROWID值到流。
|
void |
writeShort(short x)
写一个
short在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeSQLXML(SQLXML x)
将SQL
XML值写入流。
|
void |
writeString(String x)
写一个
String在Java编程语言中此
SQLOutputImpl对象。
|
void |
writeStruct(Struct x)
将Java编程语言中的
Struct对象写入此
SQLOutputImpl对象。
|
void |
writeTime(Time x)
将Java编程语言中的
java.sql.Time对象写入此
SQLOutputImpl对象。
|
void |
writeTimestamp(Timestamp x)
将Java编程语言中的
java.sql.Timestamp对象写入此
SQLOutputImpl对象。
|
void |
writeURL(URL url)
将Java编程语言中的
java.sql.Type.DATALINK对象写入此
SQLOutputImpl对象。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitwriteObjectpublic SQLOutputImpl(Vector<?> attributes, Map<String,?> map) throws SQLException
SQLOutputImpl对象,用给定的属性向量初始化并输入map。
驱动程序将使用类型映射来确定要调用哪个SQLData.writeSQL方法。
然后,该方法将按顺序调用相应的SQLOutputImpl写入器方法,从而将属性写入新的输出流。
attributes -一个
Vector包含UDT的属性对象被映射到一个或多个对象中的Java编程语言
map - 一个
java.util.Map零个或多个条目的
java.util.Map对象,每个条目包括1)
String给出UDT的完全限定名称,以及2)
类实现的
SQLData对象,定义如何映射UDT
SQLException - 如果
attributes或
map是
null价值
public void writeString(String x) throws SQLException
String在Java编程语言中此SQLOutputImpl对象。
驱动程序将它转换为SQL CHAR , VARCHAR ,或LONGVARCHAR将其返回到数据库之前。
writeString在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeBoolean(boolean x)
throws SQLException
boolean在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL BIT然后将其返回到数据库。
writeBoolean在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeByte(byte x)
throws SQLException
byte在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL BIT然后将其返回到数据库。
writeByte在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeShort(short x)
throws SQLException
short在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL SMALLINT然后将其返回到数据库。
writeShort在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeInt(int x)
throws SQLException
int在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL INTEGER然后将其返回到数据库。
writeInt在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeLong(long x)
throws SQLException
long在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL BIGINT然后将其返回到数据库。
writeLong在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeFloat(float x)
throws SQLException
float在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL REAL然后将其返回到数据库。
writeFloat在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeDouble(double x)
throws SQLException
double在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL DOUBLE然后将其返回到数据库。
writeDouble在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeBigDecimal(BigDecimal x) throws SQLException
java.math.BigDecimal对象写入此SQLOutputImpl对象。
驱动程序将其转换为SQL NUMERIC然后将其返回到数据库。
writeBigDecimal在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeBytes(byte[] x)
throws SQLException
bytes在Java编程语言中此SQLOutputImpl对象。
驱动程序将其转换为SQL VARBINARY或LONGVARBINARY然后将其返回到数据库。
writeBytes在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeDate(Date x) throws SQLException
java.sql.Date对象写入此SQLOutputImpl对象。
驱动程序将其转换为SQL DATE然后将其返回到数据库。
writeDate在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeTime(Time x) throws SQLException
java.sql.Time对象写入此SQLOutputImpl对象。
驱动程序将其转换为SQL TIME然后将其返回到数据库。
writeTime在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeTimestamp(Timestamp x) throws SQLException
java.sql.Timestamp对象写入此SQLOutputImpl对象。
驱动程序将其转换为SQL TIMESTAMP然后将其返回到数据库。
writeTimestamp在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeCharacterStream(Reader x) throws SQLException
SQLOutputImpl对象。
驱动程序将从Unicode到数据库CHAR格式进行任何CHAR转换。
writeCharacterStream在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeAsciiStream(InputStream x) throws SQLException
SQLOutputImpl对象。
驱动程序将从ASCII到数据库CHAR格式进行任何CHAR转换。
writeAsciiStream在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeBinaryStream(InputStream x) throws SQLException
SQLOutputImpl对象。
writeBinaryStream在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeObject(SQLData x) throws SQLException
SQLData对象中的数据。
当SQLData对象为null时,此方法将SQL NULL写入流。
否则,它调用给定对象的SQLData.writeSQL方法,该方法将对象的属性写入流。
方法SQLData.writeSQ调用适当的SQLOutputImpl.writeXXX方法来按顺序写入每个对象的属性。 属性必须从SQLInput输入流中读取,并以与用户定义类型的SQL定义相同的顺序写入SQLOutputImpl输出流。
writeObject在界面
SQLOutput
x - 表示SQL结构化或不同类型数据的对象
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeRef(Ref x) throws SQLException
Ref对象写入此SQLOutputImpl对象。
驱动程序将其转换为可序列化的SerialRef SQL REF值,然后将其返回到数据库。
writeRef在界面
SQLOutput
x - 表示SQL
REF值的对象
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeBlob(Blob x) throws SQLException
Blob对象写入此SQLOutputImpl对象。
驱动程序将其转换为可序列化的SerialBlob SQL BLOB值,然后将其返回到数据库。
writeBlob在界面
SQLOutput
x - 表示SQL
BLOB值的对象
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeClob(Clob x) throws SQLException
Clob对象写入此SQLOutputImpl对象。
驱动程序将其转换为可序列化的SerialClob SQL CLOB值,然后将其返回到数据库。
writeClob在界面
SQLOutput
x - 表示SQL
CLOB值的对象
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeStruct(Struct x) throws SQLException
Struct对象写入此SQLOutputImpl对象。
驱动程序将此值转换为SQL结构类型,然后将其返回到数据库。
当SQL结构类型已被映射到Java编程语言(标准映射)中的Struct对象时,应使用此方法。 如果SQL结构化类型已经被自定义映射到Java编程语言中的类,则应使用方法writeObject 。
writeStruct在界面
SQLOutput
x - 表示SQL结构化类型属性的对象
SQLException - 如果
SQLOutputImpl对象正在由
SQLData将UDT的属性值写入数据库的
SQLData对象使用。
public void writeArray(Array x) throws SQLException
Array对象写入此SQLOutputImpl对象。
驱动程序将此值转换为可序列化的SerialArray SQL ARRAY值,然后将其返回到数据库。
writeArray在界面
SQLOutput
x - 表示SQL
ARRAY值的对象
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeURL(URL url) throws SQLException
java.sql.Type.DATALINK对象写入此SQLOutputImpl对象。
驱动程序将此值转换为可序列化的SerialDatalink SQL DATALINK值,然后将其返回到数据库。
writeURL在界面
SQLOutput
url - 表示SQL
DATALINK值的对象
SQLException - 如果
SQLOutputImpl对象正在尝试将UDT的属性值写入数据库的
SQLData对象使用。
public void writeNString(String x) throws SQLException
String的Java编程语言。
驱动程序将其转换为SQL NCHAR或NVARCHAR或LONGNVARCHAR值(取决于相对于NVARCHAR值的驱动程序限制的参数大小)将其发送到流时。
writeNString在界面
SQLOutput
x - 传递给数据库的值
SQLException - 如果发生数据库访问错误
public void writeNClob(NClob x) throws SQLException
NCLOB值写入流。
writeNClob在界面
SQLOutput
x - 表示SQL
NCLOB值的数据的
NClob对象
SQLException - 如果发生数据库访问错误
public void writeRowId(RowId x) throws SQLException
ROWID值写入流。
writeRowId在界面
SQLOutput
x - 表示SQL
ROWID值的数据的
RowId对象
SQLException - 如果发生数据库访问错误
public void writeSQLXML(SQLXML x) throws SQLException
XML值写入流。
writeSQLXML在界面
SQLOutput
x - 表示SQL
XML值的数据的
SQLXML对象
SQLException - 如果发生数据库访问错误
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.