Интерфейс Clob
- Все суперинтерфейсы:
AutoCloseable
- Все известные подинтерфейсы:
NClob
- Все известные реализующие классы:
SerialClob
public interface Clob extends AutoCloseable
CLOB в языке программирования Java. SQL CLOB — это встроенный тип, который хранит символьный объект большого размера как значение столбца в строке таблицы базы данных. По умолчанию драйверы реализуют объект Clob с помощью SQL locator(CLOB), что означает, что объект Clob содержит логический указатель на данные SQL CLOB, а не сами данные. Объект Clob действителен в течение транзакции, в которой он был создан. Интерфейс Clob предоставляет методы для получения длины значения SQL CLOB (символьного объекта большого размера), материализации значения CLOB на стороне клиента и поиска подстроки или объекта CLOB в значении CLOB. Методы интерфейсов ResultSet, CallableStatement и PreparedStatement, такие как getClob и setClob, позволяют программисту получить доступ к значению SQL CLOB. Кроме того, этот интерфейс содержит методы для обновления значения CLOB.
Чтобы освободить ресурсы, используемые объектом Clob, приложения должны вызвать метод free() или close(). Любая попытка вызвать метод, отличный от free() или close(), после закрытия объекта Clob приведет к выбросу исключения SQLException.
Все методы интерфейса Clob должны быть полностью реализованы, если JDBC-драйвер поддерживает этот тип данных.
- Начиная с версии:
- 1.2
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
close() |
Закрывает объект Clob и освобождает удерживаемые им ресурсы. |
void |
free() |
Закрывает объект Clob и освобождает удерживаемые им ресурсы. |
InputStream |
getAsciiStream() |
Возвращает значение CLOB, обозначенное этим объектом Clob, в виде потока ASCII. |
Reader |
getCharacterStream() |
Возвращает значение CLOB, обозначенное этим объектом Clob, в виде объекта java.io.Reader (или потока символов). |
Reader |
getCharacterStream |
Возвращает объект Reader, содержащий часть значения Clob, начинающуюся с символа, указанного параметром pos, и имеющую длину length символов. |
String |
getSubString |
Возвращает копию указанной подстроки в значении CLOB, обозначенном этим объектом Clob. |
long |
length() |
Возвращает количество символов в значении CLOB, обозначенном этим объектом Clob. |
long |
position |
Возвращает позицию символа, с которой начинается указанная подстрока searchstr в значении SQL CLOB, представленном этим объектом Clob. |
long |
position |
Возвращает позицию символа, с которой начинается указанный объект Clob searchstr в этом объекте Clob. |
OutputStream |
setAsciiStream |
Возвращает поток для записи символов ASCII в значение CLOB, представленное этим объектом Clob, начиная с позиции pos. |
Writer |
setCharacterStream |
Возвращает поток для записи потока символов Unicode в значение CLOB, представленное этим объектом Clob, начиная с позиции pos. |
int |
setString |
Записывает указанный Java-объект String в значение CLOB, обозначенное этим объектом Clob, начиная с позиции pos. |
int |
setString |
Записывает len символов из str, начиная с символа offset, в значение CLOB, представленное этим объектом Clob. |
void |
truncate |
Усекает значение CLOB, обозначенное этим объектом Clob, до длины len символов. |
Подробное описание методов
length
long length() throws SQLException
CLOB, обозначенном этим объектом Clob.- Возвращает:
- длина
CLOBв символах - Выбрасывает:
-
SQLException— если произошла ошибка при получении длины значенияCLOB -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
getSubString
String getSubString(long pos, int length) throws SQLException
CLOB, обозначенном этим объектом Clob. Подстрока начинается с позиции pos и содержит не более length последовательных символов.- Параметры:
-
pos— первый символ извлекаемой подстроки. Первый символ находится в позиции 1. -
length— количество последовательных символов для копирования; значение length должно быть равно 0 или больше - Возвращает:
- объект
String, представляющий указанную подстроку в значенииCLOB, обозначенном этим объектомClob - Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOB; если pos меньше 1 или length меньше 0 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
getCharacterStream
Reader getCharacterStream() throws SQLException
CLOB, обозначенное этим объектом Clob, в виде объекта java.io.Reader (или потока символов).- Возвращает:
- объект
java.io.Reader, содержащий данныеCLOB - Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOB -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
- См. также:
getAsciiStream
InputStream getAsciiStream() throws SQLException
CLOB, обозначенное этим объектом Clob, в виде потока ASCII.- Возвращает:
- объект
java.io.InputStream, содержащий данныеCLOB - Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOB -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
- См. также:
position
long position(String searchstr, long start) throws SQLException
searchstr в значении SQL CLOB, представленном этим объектом Clob. Поиск начинается с позиции start.- Параметры:
-
searchstr— подстрока для поиска -
start— позиция, с которой начинается поиск; первая позиция — 1 - Возвращает:
- позицию, в которой встречается подстрока, или -1, если она не найдена; первая позиция — 1
- Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если pos меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
position
long position(Clob searchstr, long start) throws SQLException
Clob searchstr в этом объекте Clob. Поиск начинается с позиции start.- Параметры:
-
searchstr— объектClobдля поиска -
start— позиция, с которой начинается поиск; первая позиция — 1 - Возвращает:
- позицию, в которой встречается объект
Clob, или -1, если он не найден; первая позиция — 1 - Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если start меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.2
setString
int setString(long pos, String str) throws SQLException
String в значение CLOB, обозначенное этим объектом Clob, начиная с позиции pos. Строка перезапишет существующие символы в объекте Clob, начиная с позиции pos. Если при записи указанной строки достигнут конец значения Clob, длина значения Clob будет увеличена, чтобы вместить дополнительные символы. Примечание: Если значение, указанное для pos, больше длины значения CLOB + 1, поведение не определено. Некоторые JDBC-драйверы могут выбросить SQLException, тогда как другие могут поддерживать эту операцию.
- Параметры:
-
pos— позиция, с которой начинается запись в значениеCLOB, представленное этим объектомClob; первая позиция — 1. -
str— строка для записи в значениеCLOB, обозначенное этим объектомClob - Возвращает:
- количество записанных символов
- Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если pos меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.4
setString
int setString(long pos, String str, int offset, int len) throws SQLException
len символов из str, начиная с символа offset, в значение CLOB, представленное этим объектом Clob. Строка перезапишет существующие символы в объекте Clob, начиная с позиции pos. Если при записи указанной строки достигнут конец значения Clob, длина значения Clob будет увеличена, чтобы вместить дополнительные символы. Примечание: Если значение, указанное для pos, больше длины значения CLOB + 1, поведение не определено. Некоторые JDBC-драйверы могут выбросить SQLException, тогда как другие могут поддерживать эту операцию.
- Параметры:
-
pos— позиция, с которой начинается запись в этот объектCLOB; первая позиция — 1 -
str— строка для записи в значениеCLOB, представленное этим объектомClob -
offset— смещение вstr, с которого начинается чтение записываемых символов -
len— количество символов для записи - Возвращает:
- количество записанных символов
- Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если pos меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.4
setAsciiStream
OutputStream setAsciiStream(long pos) throws SQLException
CLOB, представленное этим объектом Clob, начиная с позиции pos. Записанные в поток символы перезапишут существующие символы в объекте Clob, начиная с позиции pos. Если при записи символов в поток достигнут конец значения Clob, длина значения Clob будет увеличена, чтобы вместить дополнительные символы. Примечание: Если значение, указанное для pos, больше длины значения CLOB + 1, поведение не определено. Некоторые JDBC-драйверы могут выбросить SQLException, тогда как другие могут поддерживать эту операцию.
- Параметры:
-
pos— позиция, с которой начинается запись в этот объектCLOB; первая позиция — 1 - Возвращает:
- поток для записи символов в кодировке ASCII
- Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если pos меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.4
- См. также:
setCharacterStream
Writer setCharacterStream(long pos) throws SQLException
CLOB, представленное этим объектом Clob, начиная с позиции pos. Записанные в поток символы перезапишут существующие символы в объекте Clob, начиная с позиции pos. Если при записи символов в поток достигнут конец значения Clob, длина значения Clob будет увеличена, чтобы вместить дополнительные символы. Примечание: Если значение, указанное для pos, больше длины значения CLOB + 1, поведение не определено. Некоторые JDBC-драйверы могут выбросить SQLException, тогда как другие могут поддерживать эту операцию.
- Параметры:
-
pos— позиция, с которой начинается запись в значениеCLOB; первая позиция — 1 - Возвращает:
- поток для записи символов в кодировке Unicode
- Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если pos меньше 1 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.4
- См. также:
truncate
void truncate(long len) throws SQLException
CLOB, обозначенное этим объектом Clob, до длины len символов. Примечание: Если значение, указанное для pos, больше длины значения CLOB + 1, поведение не определено. Некоторые JDBC-драйверы могут выбросить SQLException, тогда как другие могут поддерживать эту операцию.
- Параметры:
-
len— длина в символах, до которой следует усечь значениеCLOB - Выбрасывает:
-
SQLException— если произошла ошибка при доступе к значениюCLOBили если len меньше 0 -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.4
free
void free() throws SQLException
Clob и освобождает удерживаемые им ресурсы. Если объект Clob уже закрыт, вызов этого метода не оказывает никакого эффекта.
- Выбрасывает:
-
SQLException— если при освобождении ресурсов Clob произошла ошибка -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.6
- См. также:
getCharacterStream
Reader getCharacterStream(long pos, long length) throws SQLException
Reader, содержащий часть значения Clob, начинающуюся с символа, указанного параметром pos, и имеющую длину length символов.- Параметры:
-
pos— смещение до первого символа извлекаемого частичного значения. Первый символ в Clob находится в позиции 1. -
length— длина извлекаемого частичного значения в символах. - Возвращает:
-
Reader, через который можно прочитать частичное значениеClob. - Выбрасывает:
-
SQLException— если pos меньше 1; или если pos больше количества символов вClob; или если pos + length больше количества символов вClob -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 1.6
close
default void close() throws SQLException
Clob и освобождает удерживаемые им ресурсы. Если объект Clob уже закрыт, вызов этого метода не оказывает никакого эффекта.
- Определено в:
-
closeв интерфейсеAutoCloseable - Требования к реализации:
- Реализация по умолчанию вызывает метод
free(). - Выбрасывает:
-
SQLException— если при освобождении ресурсов Clob произошла ошибка -
SQLFeatureNotSupportedException— если JDBC-драйвер не поддерживает этот метод - Начиная с версии:
- 26
- См. также:
© 1993, 2025, 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.