Интерфейс SQLOutput
- Все известные реализующие классы:
SQLOutputImpl
public interface SQLOutput
Поток вывода для записи атрибутов пользовательского типа обратно в базу данных. Этот интерфейс, используемый только для пользовательского отображения, используется драйвером, и его методы никогда не вызываются программистом напрямую.
Когда объект класса, реализующего интерфейс SQLData, передается в качестве аргумента в SQL-запрос, драйвер JDBC вызывает метод SQLData.getSQLType, чтобы определить тип SQL-данных, передаваемых в базу данных. Затем драйвер создает экземпляр SQLOutput и передает его методу SQLData.writeSQL. Метод writeSQL в свою очередь вызывает соответствующие методы записи SQLOutput (например, writeBoolean, writeCharacterStream, и так далее) для записи данных из объекта SQLData в поток вывода SQLOutput в виде представления SQL пользовательского типа.
- С:
- 1.2
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | writeArray(Array x) | Записывает значение SQL |
void | writeAsciiStream(InputStream x) | Записывает следующий атрибут в поток как поток ASCII-символов. |
void | writeBigDecimal(BigDecimal x) | Записывает следующий атрибут в поток как объект java.math.BigDecimal. |
void | writeBinaryStream(InputStream x) | Записывает следующий атрибут в поток как поток неинтерпретированных байтов. |
void | writeBlob(Blob x) | Записывает значение SQL |
void | writeBoolean(boolean x) | Записывает следующий атрибут в поток как Java boolean. |
void | writeByte(byte x) | Записывает следующий атрибут в поток как Java byte. |
void | writeBytes(byte[] x) | Записывает следующий атрибут в поток как массив байтов. |
void | writeCharacterStream(Reader x) | Записывает следующий атрибут в поток как поток Unicode-символов. |
void | writeClob(Clob x) | Записывает значение SQL |
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) | Записывает значение SQL |
void | writeNString(String x) | Записывает следующий атрибут в поток как |
default void | writeObject(Object x,
SQLType targetSqlType) | Записывает в поток данные, содержащиеся в данном объекте. |
void | writeObject(SQLData x) | Записывает в поток данные, содержащиеся в данном объекте |
void | writeRef(Ref x) | Записывает значение SQL |
void | writeRowId(RowId x) | Записывает значение SQL |
void | writeShort(short x) | Записывает следующий атрибут в поток как Java short. |
void | writeSQLXML(SQLXML x) | Записывает значение SQL |
void | writeString(String x) | Записывает следующий атрибут в поток как |
void | writeStruct(Struct x) | Записывает значение SQL структурированного типа в поток. |
void | writeTime(Time x) | Записывает следующий атрибут в поток как объект java.sql.Time. |
void | writeTimestamp(Timestamp x) | Записывает следующий атрибут в поток как объект java.sql.Timestamp. |
void | writeURL(URL x) | Записывает значение SQL |
Методы
writeString
void writeString(String x)
throws SQLException Записывает следующий атрибут в поток в качестве String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeBoolean
void writeBoolean(boolean x)
throws SQLException Записывает следующий атрибут в поток в качестве булевого значения Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeByte
void writeByte(byte x)
throws SQLException Записывает следующий атрибут в поток в качестве байтового значения Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeShort
void writeShort(short x)
throws SQLException Записывает следующий атрибут в поток в качестве короткого целого Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeInt
void writeInt(int x)
throws SQLException Записывает следующий атрибут в поток в качестве целого Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeLong
void writeLong(long x)
throws SQLException Записывает следующий атрибут в поток в качестве long Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeFloat
void writeFloat(float x)
throws SQLException Записывает следующий атрибут в поток в качестве float Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeDouble
void writeDouble(double x)
throws SQLException Записывает следующий атрибут в поток в качестве double Java. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeBigDecimal
void writeBigDecimal(BigDecimal x)
throws SQLException Записывает следующий атрибут в поток как объект java.math.BigDecimal. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeBytes
void writeBytes(byte[] x)
throws SQLException Записывает следующий атрибут в поток как массив байтов. Записывает следующий атрибут в поток как String на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeDate
void writeDate(Date x)
throws SQLException Записывает следующий атрибут в поток как объект java.sql.Date. Записывает следующий атрибут в поток как объект java.sql.Date на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeTime
void writeTime(Time x)
throws SQLException Записывает следующий атрибут в поток как объект java.sql.Time. Записывает следующий атрибут в поток как объект java.sql.Date на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeTimestamp
void writeTimestamp(Timestamp x)
throws SQLException Записывает следующий атрибут в поток как объект java.sql.Timestamp. Записывает следующий атрибут в поток как объект java.sql.Date на языке программирования Java.
- Параметры:
-
x- значение, которое необходимо передать в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeCharacterStream
void writeCharacterStream(Reader x)
throws SQLException Записывает следующий атрибут в поток в виде потока символов Юникода.
- Параметры:
-
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, этот метод записывает в поток SQL NULL. В противном случае он вызывает метод SQLData.writeSQL данного объекта, который записывает атрибуты объекта в поток. Реализация метода SQLData.writeSQL вызывает соответствующие методы записи SQLOutput для записи каждого атрибута объекта в порядке. Атрибуты должны быть прочитаны из потока ввода SQLInput и записаны в поток вывода SQLOutput в том же порядке, в котором они были перечислены в SQL определении пользовательского типа.
- Параметры:
-
x- объект, представляющий данные структурированного или отдельного типа SQL - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeRef
void writeRef(Ref x)
throws SQLException Записывает значение SQL REF в поток.
- Параметры:
-
x- объектRef, представляющий данные значения SQLREF - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeBlob
void writeBlob(Blob x)
throws SQLException Записывает значение SQL BLOB в поток.
- Параметры:
-
x- объектBlob, представляющий данные значения SQLBLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeClob
void writeClob(Clob x)
throws SQLException Записывает значение SQL CLOB в поток.
- Параметры:
-
x- объектClob, представляющий данные значения SQLCLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С версии:
- 1.2
writeStruct
void writeStruct(Struct x)
throws SQLException Записывает значение структурированного типа SQL в поток.
- Параметры:
-
x- объектStruct, представляющий данные SQL-структурированного типа - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.2
writeArray
void writeArray(Array x)
throws SQLException Записывает значение SQL-массива в поток.
- Параметры:
-
x- объектArray, представляющий данные SQL-типаARRAY - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.2
writeURL
void writeURL(URL x)
throws SQLException Записывает значение SQL-URL в поток.
- Параметры:
-
x- объектjava.net.URL, представляющий данные SQL-типа DATALINK - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.4
writeNString
void writeNString(String x)
throws SQLException Записывает следующий атрибут в поток как строку в языке программирования Java. Драйвер преобразует её в SQL-значение типа NCHAR или NVARCHAR или LONGNVARCHAR (в зависимости от размера аргумента по отношению к пределам драйвера для значений NVARCHAR) при отправке в поток.
- Параметры:
-
x- значение, передаваемое в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.6
writeNClob
void writeNClob(NClob x)
throws SQLException Записывает значение SQL-NClob в поток.
- Параметры:
-
x- объектNClob, представляющий данные SQL-типаNCLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.6
writeRowId
void writeRowId(RowId x)
throws SQLException Записывает значение SQL-RowId в поток.
- Параметры:
-
x- объектRowId, представляющий данные SQL-типаROWID - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот метод - С версии:
- 1.6
writeSQLXML
void writeSQLXML(SQLXML x)
throws SQLException Записывает значение SQL-XML в поток.
- Параметры:
-
x- объектSQLXML, представляющий данные SQL-типаXML - Исключения:
-
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, этот метод записывает SQL-объект NULL в поток.
Если у объекта есть пользовательское отображение (он является классом, реализующим интерфейс SQLData), JDBC-драйвер должен вызвать метод SQLData.writeSQL для его записи в SQL-поток данных. Если же объект является классом, реализующим интерфейсы Ref, Blob, Clob, NClob, Struct, java.net.URL или Array, драйвер должен передать его в базу данных как значение соответствующего SQL-типа.
Реализация по умолчанию выбросит SQLFeatureNotSupportedException
- Параметры:
-
x- объект, содержащий входное значение параметра -
targetSqlType- тип SQL, который будет отправлен в базу данных. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или если Java-объект, указанный x, является объектом InputStream или Reader, а значение параметра scale меньше нуля -
SQLFeatureNotSupportedException- если JDBC-драйвер не поддерживает этот тип данных - С версии:
- 1.8
- См. также:
-
JDBCType,SQLType
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.sql/java/sql/SQLOutput.html