Класс BaseRowSet
- java.lang.Object
-
- javax.sql.rowset.BaseRowSet
- Все реализуемые интерфейсы:
- Serializable, Cloneable
public abstract class BaseRowSet extends Object implements Serializable, Cloneable
Абстрактный класс, предоставляющий объект RowSet со своей базовой функциональностью. Базовые функции включают свойства и уведомления о событиях, которые должны реализовывать все компоненты JavaBeans™.
1.0 Обзор
КлассBaseRowSet предоставляет основную функциональность для всех реализаций RowSet, и все стандартные реализации могут использовать этот класс в сочетании с одним или несколькими интерфейсами RowSet для предоставления стандартной реализации, специфичной для поставщика. Для ясности, все реализации должны реализовывать как минимум один из интерфейсов RowSet (JdbcRowSet, CachedRowSet, JoinRowSet, FilteredRowSet, или WebRowSet). Это означает, что любая реализация, расширяющая класс BaseRowSet, также должна реализовать один из интерфейсов RowSet.
Класс BaseRowSet предоставляет следующее:
-
Свойства
- Поля для хранения текущих свойств
- Методы для получения и установки свойств
- Уведомление о событиях
-
Полный набор методов установки для установки параметров в команде объекта
RowSet - Потоки
- Поля для хранения экземпляров потоков
- Константы для указания типа потока
2.0 Установка свойств
Все наборы строк данных поддерживают набор свойств, которые обычно устанавливаются с помощью инструмента. Количество и типы свойств набора строк данных будут варьироваться в зависимости от того, что делает реализацияRowSet и как она получает свои данные. Например, наборы строк данных, получающие данные из объекта ResultSet, должны установить свойства, необходимые для создания подключения к базе данных. Если объект RowSet использует механизм DriverManager для создания подключения, он должен установить свойство для JDBC URL, определяющего соответствующий драйвер, и установить свойства, предоставляющие имя пользователя и пароль. Если же набор строк данных использует объект DataSource для создания подключения, что является предпочтительным методом, ему не нужно устанавливать свойство для JDBC URL. Вместо этого ему необходимо установить свойство для логического имени источника данных вместе со свойствами для имени пользователя и пароля. ПРИМЕЧАНИЕ: Для использования объекта DataSource для создания подключения объект DataSource должен быть зарегистрирован в службе именования, которая использует API Java Naming and Directory Interface™ (JNDI). Эта регистрация обычно выполняется человеком, выполняющим функции системного администратора.
3.0 Установка команды и ее параметров
Когда набор строк данных получает свои данные из реляционной базы данных, он выполняет команду (запрос), которая генерирует объектResultSet. Этот запрос является командой, которая устанавливается для свойства команды объекта RowSet. Набор строк данных заполняется данными, считывая данные из объекта ResultSet в себя. Если запрос содержит плейсхолдеры для значений, которые должны быть установлены, для установки этих значений используются методы установки BaseRowSet. Все методы установки позволяют устанавливать эти значения в null при необходимости. Следующий фрагмент кода иллюстрирует, как может быть установлено свойство команды объекта CachedRowSet™ объекта crs. Обратите внимание, что если для установки свойств используется инструмент, это тот код, который инструмент будет использовать.
crs.setCommand("SELECT FIRST_NAME, LAST_NAME, ADDRESS FROM CUSTOMERS" +
"WHERE CREDIT_LIMIT > ? AND REGION = ?"); В этом примере значения для CREDIT_LIMIT и REGION являются параметрами-заменителями, которые обозначаются вопросительным знаком (?). Первый вопросительный знак — это параметр-заменитель номер 1, второй вопросительный знак — параметр-заменитель номер 2, и так далее. Все параметры-заменители должны быть установлены со значениями перед выполнением запроса. Для установки этих параметров-заменителей класс BaseRowSet предоставляет набор методов установки, аналогичных методам интерфейса PreparedStatement, для установки значений каждого типа данных. Объект RowSet хранит значения параметров внутри, а его метод execute использует их внутри для установки значений параметров-заменителей перед отправкой команды в СУБД для выполнения.
Следующий фрагмент кода демонстрирует установку двух параметров в запросе из предыдущего примера.
crs.setInt(1, 5000);
crs.setString(2, "West"); Если в этот момент вызвать метод execute, отправленный в СУБД запрос будет: "SELECT FIRST_NAME, LAST_NAME, ADDRESS FROM CUSTOMERS" +
"WHERE CREDIT_LIMIT > 5000 AND REGION = 'West'" ПРИМЕЧАНИЕ: Установка объектов Array, Clob, Blob и Ref в качестве параметра команды сохраняет эти значения как объекты SerialArray, SerialClob, SerialBlob и SerialRef соответственно. 4.0 Обработка параметров за кулисами
ПРИМЕЧАНИЕ: КлассBaseRowSet предоставляет два типа методов установки: те, которые устанавливают свойства, и те, которые устанавливают параметры-заменители. Методы установки, обсуждаемые в этом разделе, — это те, которые устанавливают параметры-заменители. Параметры-заменители, установленные с помощью методов установки BaseRowSet, хранятся как объекты во внутреннем объекте Hashtable. Примитивы хранятся как их тип Object. Например, byte хранится как объект Byte, а int хранится как объект Integer. При вызове метода execute значения в объекте Hashtable подставляются в соответствующие параметры-заменители в команде.
Вызов метода getParams возвращает значения, хранящиеся в объекте Hashtable, в виде массива экземпляров Object. Элемент этого массива может быть простым экземпляром Object или массивом (который является типом Object). Используемый метод установки определяет, является ли элемент этого массива экземпляром Object или массивом.
Большинство методов установки параметров-заменителей принимают два параметра, где первый параметр указывает, какой параметр-заменитель следует установить, а второй параметр — значение, которое следует установить. К этой категории относятся такие методы, как setInt, setString, setBoolean и setLong. После вызова этих методов вызов метода getParams вернет массив с установленным значениями. Каждый элемент массива — это экземпляр Object, представляющий установленные значения. Порядок этих значений в массиве определяется параметром int (первый параметр), переданным в метод установки. Значения в массиве — это значения (второй параметр), переданные в метод установки. Другими словами, первый элемент массива — это значение, которое должно быть установлено для первого параметра-заменителя в команде объекта RowSet. Второй элемент — значение, которое должно быть установлено для второго параметра-заменителя, и так далее.
Некоторые методы установки отправляют драйверу и СУБД информацию, выходящую за рамки устанавливаемого значения. При вызове метода getParams после использования одного из этих методов установки элементы массива сами будут массивами для размещения дополнительной информации. В этой категории метод setNull является особым случаем, поскольку одна версия принимает только два параметра (setNull(int parameterIndex, int SqlType)). Тем не менее, он требует массива для хранения информации, которая будет передана драйверу и СУБД. Первый элемент этого массива — устанавливаемое значение, которое является null, а второй элемент — int, предоставленный для sqlType, который указывает тип SQL-значения, которое устанавливается в null. Эта информация необходима некоторым СУБД и поэтому необходима для обеспечения портативности приложений. Другая версия предназначена для использования, когда значение, которое должно быть установлено в null, — это пользовательский тип. Она принимает три параметра (setNull(int parameterIndex, int sqlType, String typeName)) и также требует массива для хранения информации, которая будет передана драйверу и СУБД. Первые два элемента этого массива такие же, как и в первой версии setNull. Третий элемент, typeName, указывает SQL-название пользовательского типа. Как и в других методах установки, номер параметра-заменителя, который должен быть установлен, указывается положением элемента в массиве, возвращаемом getParams. Например, если параметр, переданный в setNull, равен 2, второй элемент массива, возвращаемого getParams, будет массивом из двух или трех элементов.
Некоторые методы, такие как setObject и setDate, имеют версии, которые принимают более двух параметров, при этом дополнительные параметры предоставляют информацию драйверу или СУБД. Например, методы setDate, setTime и setTimestamp могут принимать объект Calendar в качестве своего третьего параметра. Если СУБД не хранит информацию о часовом поясе, драйвер использует объект Calendar для построения объекта Date, Time или Timestamp, который устанавливается. Как и в других методах, предоставляющих дополнительную информацию, элемент массива, возвращаемого getParams, является массивом вместо простого экземпляра Object.
Методы setAsciiStream, setBinaryStream, setCharacterStream и setUnicodeStream (который устарел, поэтому приложения должны использовать getCharacterStream вместо него) принимают три параметра, поэтому для них элемент массива, возвращаемого getParams, также является массивом. Различие в этих методах установки заключается в том, что помимо информации, предоставляемой параметрами, массив содержит одну из констант BaseRowSet , указывающих тип устанавливаемого потока.
ПРИМЕЧАНИЕ: Метод getParams вызывается внутри реализациями RowSet, расширяющими этот класс; обычно его не вызывает программист-приложение напрямую.
5.0 Уведомление о событиях
КлассBaseRowSet предоставляет механизм уведомления о событиях для наборов строк данных. Он содержит поле listeners, методы для добавления и удаления слушателей и методы для уведомления слушателей о изменениях. Слушатель — это объект, реализовавший интерфейс RowSetListener. Если он был добавлен в список слушателей объекта RowSet, он будет уведомлен при возникновении события в этом объекте RowSet. Реализация каждого слушателя методов RowSetListener определяет, что этот объект будет делать, когда его уведомят о возникновении события.
Для объекта RowSet возможны три события:
- перемещение курсора
- изменение отдельной строки (обновление, удаление или вставка)
- изменение содержимого всего объекта
RowSet
Метод BaseRowSet , используемый для уведомлений, указывает тип события, которое произошло. Например, метод notifyRowChanged указывает, что строка была обновлена, удалена или вставлена. Каждый из методов уведомления создаёт объект RowSetEvent, который передаётся слушателю для идентификации объекта RowSet, на котором произошло событие. Что делает слушатель с этой информацией (а может, и ничего), зависит от того, как он был реализован.
6.0 Поведение по умолчанию
ОбъектBaseRowSet по умолчанию инициализируется множеством начальных значений. Для экземпляра RowSet по умолчанию, который расширяет класс BaseRowSet, справедливы следующие утверждения: - Имеет прокручиваемый курсор и не отображает изменения, внесённые другими.
- Обновляемый.
- Не отображает строки, которые были удалены.
- Не имеет временного ограничения на то, сколько времени драйверу может потребоваться для выполнения команды объекта
RowSet. - Не имеет ограничения на количество строк, которое может содержать.
- Не имеет ограничения на количество байтов, которые может содержать столбец. ПРИМЕЧАНИЕ: Это ограничение применяется только к столбцам, которые содержат значения следующих типов:
BINARY,VARBINARY,LONGVARBINARY,CHAR,VARCHAR, иLONGVARCHAR. - Не будет видеть несохранённые данные (совершение «грязных» чтений).
- Обработка escape включена.
- Тип карты подключений установлен на
null. - Имеет пустой объект
Vectorдля хранения значений, заданных для параметров-заполнителей в команде объектаRowSet.
Если требуются другие значения, приложение должно явно установить значения свойств. Например, следующая строка кода устанавливает максимальное количество строк для объекта CachedRowSet crs в 500.
crs.setMaxRows(500);Методы, реализованные в расширениях этого класса
BaseRowSet, должны генерировать объект SQLException при любом нарушении определённых утверждений. Кроме того, если расширяемый класс переопределяет и повторно реализует любой метод BaseRowSet и сталкивается с проблемами подключения или проблемами с базовым источником данных, этот метод может дополнительно сгенерировать объект SQLException по этой причине.- См. также:
- Сериализованная форма
Поля
| Модификатор и тип | Поле и описание |
|---|---|
static int |
ASCII_STREAM_PARAM Константа, указывающая объекту |
protected InputStream |
asciiStream Объект |
static int |
BINARY_STREAM_PARAM Константа, указывающая объекту |
protected InputStream |
binaryStream Объект |
protected Reader |
charStream Объект |
static int |
UNICODE_STREAM_PARAM Константа, указывающая объекту |
protected InputStream |
unicodeStream Объект |
Конструкторы
| Конструктор и описание |
|---|
BaseRowSet() Создаёт новый объект |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
addRowSetListener(RowSetListener listener) Слушатель будет уведомлен всякий раз, когда на этом объекте |
void |
clearParameters() Очищает все текущие значения параметров во внутренней представлении параметров этого объекта |
String |
getCommand() Возвращает SQL-запрос, являющийся командой для этого объекта |
int |
getConcurrency() Возвращает конкуреность для этого объекта |
String |
getDataSourceName() Возвращает логическое имя, которое, при передаче в службу именования, использующую API Java Naming and Directory Interface (JNDI), вернёт объект |
boolean |
getEscapeProcessing() Определяет, включена ли обработка экранирования для этого объекта |
int |
getFetchDirection() Возвращает текущее значение параметра направления извлечения для этого объекта |
int |
getFetchSize() Возвращает размер извлечения для этого объекта |
int |
getMaxFieldSize() Возвращает максимальное количество байтов, которое может быть использовано для значения столбца в этом объекте |
int |
getMaxRows() Возвращает максимальное количество строк, которое может содержать этот объект |
Object[] |
getParams() Возвращает массив, содержащий значения параметров (как объектов, так и примитивных типов), установленные для команды этого объекта |
String |
getPassword() Возвращает пароль, используемый для создания подключения к базе данных для этого объекта |
int |
getQueryTimeout() Возвращает максимальное количество секунд, которое драйвер будет ждать выполнения запроса. |
boolean |
getShowDeleted() Возвращает |
int |
getTransactionIsolation() Возвращает свойство изоляции транзакции для подключения этого объекта |
int |
getType() Возвращает тип этого объекта |
Map<String,Class<?>> |
getTypeMap() Возвращает карту типов, связанную с объектом |
String |
getUrl() Возвращает JDBC URL, используемый объектом |
String |
getUsername() Возвращает имя пользователя, используемое для создания подключения к базе данных. |
protected void |
initParams() Выполняет необходимые внутренние конфигурации и инициализации, чтобы позволить любой реализации JDBC |
boolean |
isReadOnly() Возвращает |
protected void |
notifyCursorMoved() Уведомляет всех слушателей, зарегистрированных с этим объектом |
protected void |
notifyRowChanged() Уведомляет всех слушателей, зарегистрированных с этим объектом |
protected void |
notifyRowSetChanged() Уведомляет всех слушателей, зарегистрированных с этим объектом |
void |
removeRowSetListener(RowSetListener listener) Удаляет указанный объект из списка слушателей этого объекта |
void |
setArray(int parameterIndex,
Array array) Устанавливает указанный параметр в объект |
void |
setAsciiStream(int parameterIndex,
InputStream x) Устанавливает указанный параметр в команде этого объекта |
void |
setAsciiStream(int parameterIndex,
InputStream x,
int length) Устанавливает указанный параметр в заданный объект |
void |
setAsciiStream(String parameterName,
InputStream x) Устанавливает указанный параметр в заданный поток ввода. |
void |
setAsciiStream(String parameterName,
InputStream x,
int length) Устанавливает указанный параметр в заданный поток ввода, который будет содержать указанное количество байтов. |
void |
setBigDecimal(int parameterIndex,
BigDecimal x) Устанавливает указанный параметр в заданное значение |
void |
setBigDecimal(String parameterName,
BigDecimal x) Устанавливает указанный параметр в заданное значение |
void |
setBinaryStream(int parameterIndex,
InputStream x) Устанавливает указанный параметр в команде этого объекта |
void |
setBinaryStream(int parameterIndex,
InputStream x,
int length) Устанавливает указанный параметр в заданный объект |
void |
setBinaryStream(String parameterName,
InputStream x) Устанавливает указанный параметр в заданный поток ввода. |
void |
setBinaryStream(String parameterName,
InputStream x,
int length) Устанавливает указанный параметр в заданный поток ввода, который будет содержать указанное количество байтов. |
void |
setBlob(int parameterIndex,
Blob x) Устанавливает указанный параметр в заданный объект |
void |
setBlob(int parameterIndex,
InputStream inputStream) Устанавливает указанный параметр в объект |
void |
setBlob(int parameterIndex,
InputStream inputStream,
long length) Устанавливает указанный параметр в объект |
void |
setBlob(String parameterName,
Blob x) Устанавливает указанный параметр в заданный объект |
void |
setBlob(String parameterName,
InputStream inputStream) Устанавливает указанный параметр в объект |
void |
setBlob(String parameterName,
InputStream inputStream,
long length) Устанавливает указанный параметр в объект |
void |
setBoolean(int parameterIndex,
boolean x) Устанавливает указанный параметр в заданное значение |
void |
setBoolean(String parameterName,
boolean x) Устанавливает указанный параметр в заданное значение Java |
void |
setByte(int parameterIndex,
byte x) Устанавливает указанный параметр в заданное значение |
void |
setByte(String parameterName,
byte x) Устанавливает указанный параметр в заданное значение Java |
void |
setBytes(int parameterIndex,
byte[] x) Устанавливает указанный параметр в заданный массив байтов. |
void |
setBytes(String parameterName,
byte[] x) Устанавливает указанный параметр в заданный массив байтов языка Java. |
void |
setCharacterStream(int parameterIndex,
Reader reader) Устанавливает указанный параметр в команде этого объекта |
void |
setCharacterStream(int parameterIndex,
Reader reader,
int length) Устанавливает указанный параметр в заданный объект |
void |
setCharacterStream(String parameterName,
Reader reader) Устанавливает указанный параметр в заданный объект |
void |
setCharacterStream(String parameterName,
Reader reader,
int length) Устанавливает указанный параметр в заданный объект |
void |
setClob(int parameterIndex,
Clob x) Устанавливает указанный параметр в заданный объект |
void |
setClob(int parameterIndex,
Reader reader) Устанавливает указанный параметр в объект |
void |
setClob(int parameterIndex,
Reader reader,
long length) Устанавливает указанный параметр в объект |
void |
setClob(String parameterName,
Clob x) Устанавливает указанный параметр в заданный объект |
void |
setClob(String parameterName,
Reader reader) Устанавливает указанный параметр в объект |
void |
setClob(String parameterName,
Reader reader,
long length) Устанавливает указанный параметр в объект |
void |
setCommand(String cmd) Устанавливает свойство |
void |
setConcurrency(int concurrency) Устанавливает значение конкурентности для объекта |
void |
setDataSourceName(String name) Устанавливает свойство имени |
void |
setDate(int parameterIndex,
Date x) Устанавливает указанный параметр на заданное значение |
void |
setDate(int parameterIndex,
Date x,
Calendar cal) Устанавливает указанный параметр на заданный объект |
void |
setDate(String parameterName,
Date x) Устанавливает указанный параметр на заданное значение |
void |
setDate(String parameterName,
Date x,
Calendar cal) Устанавливает указанный параметр на заданное значение |
void |
setDouble(int parameterIndex,
double x) Устанавливает указанный параметр на заданное значение |
void |
setDouble(String parameterName,
double x) Устанавливает указанный параметр на заданное значение Java |
void |
setEscapeProcessing(boolean enable) Устанавливает значение |
void |
setFetchDirection(int direction) Предоставляет драйверу подсказку о направлении обработки строк в этом объекте |
void |
setFetchSize(int rows) Устанавливает размер выборки для объекта |
void |
setFloat(int parameterIndex,
float x) Устанавливает указанный параметр на заданное значение |
void |
setFloat(String parameterName,
float x) Устанавливает указанный параметр на заданное значение Java |
void |
setInt(int parameterIndex,
int x) Устанавливает указанный параметр на |
void |
setInt(String parameterName,
int x) Устанавливает указанный параметр на заданное значение Java |
void |
setLong(int parameterIndex,
long x) Устанавливает указанный параметр на заданное значение |
void |
setLong(String parameterName,
long x) Устанавливает указанный параметр на заданное значение Java |
void |
setMaxFieldSize(int max) Устанавливает максимальное количество байтов, которое может использоваться для значения столбца в этом объекте |
void |
setMaxRows(int max) Устанавливает максимальное количество строк, которое может содержать этот объект |
void |
setNCharacterStream(int parameterIndex,
Reader value) Устанавливает указанный параметр в команде объекта |
void |
setNCharacterStream(int parameterIndex,
Reader value,
long length) Устанавливает указанный параметр на объект |
void |
setNCharacterStream(String parameterName,
Reader value) Устанавливает указанный параметр на объект |
void |
setNCharacterStream(String parameterName,
Reader value,
long length) Устанавливает указанный параметр на объект |
void |
setNClob(int parameterIndex,
NClob value) Устанавливает указанный параметр на объект |
void |
setNClob(int parameterIndex,
Reader reader) Устанавливает указанный параметр на объект |
void |
setNClob(int parameterIndex,
Reader reader,
long length) Устанавливает указанный параметр на объект |
void |
setNClob(String parameterName,
NClob value) Устанавливает указанный параметр на объект |
void |
setNClob(String parameterName,
Reader reader) Устанавливает указанный параметр на объект |
void |
setNClob(String parameterName,
Reader reader,
long length) Устанавливает указанный параметр на объект |
void |
setNString(int parameterIndex,
String value) Устанавливает указанный параметр на заданный объект |
void |
setNString(String parameterName,
String value) Устанавливает указанный параметр на заданный объект |
void |
setNull(int parameterIndex,
int sqlType) Устанавливает указанный параметр на SQL |
void |
setNull(int parameterIndex,
int sqlType,
String typeName) Устанавливает указанный параметр на SQL |
void |
setNull(String parameterName,
int sqlType) Устанавливает указанный параметр на SQL |
void |
setNull(String parameterName,
int sqlType,
String typeName) Устанавливает указанный параметр на SQL |
void |
setObject(int parameterIndex,
Object x) Устанавливает указанный параметр на |
void |
setObject(int parameterIndex,
Object x,
int targetSqlType) Устанавливает значение указанного параметра со значением |
void |
setObject(int parameterIndex,
Object x,
int targetSqlType,
int scale) Устанавливает указанный параметр на |
void |
setObject(String parameterName,
Object x) Устанавливает значение указанного параметра со значением объекта. |
void |
setObject(String parameterName,
Object x,
int targetSqlType) Устанавливает значение указанного параметра со значением объекта. |
void |
setObject(String parameterName,
Object x,
int targetSqlType,
int scale) Устанавливает значение указанного параметра со значением объекта. |
void |
setPassword(String pass) Устанавливает пароль, используемый для создания подключения к базе данных для этого объекта |
void |
setQueryTimeout(int seconds) Устанавливает максимальное время ожидания выполнения запроса драйвером на заданное число секунд. |
void |
setReadOnly(boolean value) Устанавливает свойство readOnly объекта |
void |
setRef(int parameterIndex,
Ref ref) Устанавливает указанный параметр на заданный объект |
void |
setRowId(int parameterIndex,
RowId x) Устанавливает указанный параметр на заданный объект |
void |
setRowId(String parameterName,
RowId x) Устанавливает указанный параметр на заданный объект |
void |
setShort(int parameterIndex,
short x) Устанавливает указанный параметр на заданное значение |
void |
setShort(String parameterName,
short x) Устанавливает указанный параметр на заданное значение Java |
void |
setShowDeleted(boolean value) Устанавливает свойство |
void |
setSQLXML(int parameterIndex,
SQLXML xmlObject) Устанавливает указанный параметр на заданный объект |
void |
setSQLXML(String parameterName,
SQLXML xmlObject) Устанавливает указанный параметр на заданный объект |
void |
setString(int parameterIndex,
String x) Устанавливает указанный параметр на заданное значение |
void |
setString(String parameterName,
String x) Устанавливает указанный параметр на заданное значение Java |
void |
setTime(int parameterIndex,
Time x) Устанавливает указанный параметр на заданное значение |
void |
setTime(int parameterIndex,
Time x,
Calendar cal) Устанавливает указанный параметр на заданный объект |
void |
setTime(String parameterName,
Time x) Устанавливает указанный параметр на заданное значение |
void |
setTime(String parameterName,
Time x,
Calendar cal) Устанавливает указанный параметр на заданное значение |
void |
setTimestamp(int parameterIndex,
Timestamp x) Устанавливает указанный параметр на заданное значение |
void |
setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal) Устанавливает указанный параметр на заданный объект |
void |
setTimestamp(String parameterName,
Timestamp x) Устанавливает указанный параметр в заданное |
void |
setTimestamp(String parameterName,
Timestamp x,
Calendar cal) Устанавливает указанный параметр в заданное |
void |
setTransactionIsolation(int level) Устанавливает свойство изоляции транзакции для этого JDBC |
void |
setType(int type) Устанавливает тип для этого |
void |
setTypeMap(Map<String,Class<?>> map) Устанавливает заданный |
void |
setUnicodeStream(int parameterIndex,
InputStream x,
int length) Устаревший. Вместо этого следует использовать getCharacterStream |
void |
setURL(int parameterIndex,
URL x) Устанавливает указанный параметр в заданное |
void |
setUrl(String url) Устанавливает свойство Url для этого |
void |
setUsername(String name) Устанавливает свойство имени пользователя для этого |
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
UNICODE_STREAM_PARAM
public static final int UNICODE_STREAM_PARAM
Постоянная, указывающая объекту RowSetReaderImpl , что данный параметр является потоком Unicode. Этот объект RowSetReaderImpl предоставляется как расширение абстрактного класса SyncProvider, определенного в механизме SPI статического фабричного метода SyncFactory.
- См. также:
- Значения постоянных полей
BINARY_STREAM_PARAM
public static final int BINARY_STREAM_PARAM
Постоянная, указывающая объекту RowSetReaderImpl , что данный параметр является двоичным потоком. Объект RowSetReaderImpl предоставляется как расширение абстрактного класса SyncProvider, определенного в механизме SPI статического фабричного метода SyncFactory.
- См. также:
- Значения постоянных полей
ASCII_STREAM_PARAM
public static final int ASCII_STREAM_PARAM
Постоянная, указывающая объекту RowSetReaderImpl , что данный параметр является потоком ASCII. Объект RowSetReaderImpl предоставляется как расширение абстрактного класса SyncProvider, определенного в механизме SPI статического фабричного метода SyncFactory.
- См. также:
- Значения постоянных полей
binaryStream
protected InputStream binaryStream
Объект InputStream, который будет возвращен методом getBinaryStream, который указан в интерфейсе ResultSet.
unicodeStream
protected InputStream unicodeStream
Объект InputStream, который будет возвращен методом getUnicodeStream, который указан в интерфейсе ResultSet.
asciiStream
protected InputStream asciiStream
Объект InputStream, который будет возвращен методом getAsciiStream, который указан в интерфейсе ResultSet.
charStream
protected Reader charStream
Объект Reader, который будет возвращен методом getCharacterStream, который указан в интерфейсе ResultSet.
Конструкторы
BaseRowSet
public BaseRowSet()
Создает новый объект BaseRowSet, инициализированный по умолчанию объектом Vector для его поля listeners. Другие значения по умолчанию, с которыми он инициализирован, перечислены в разделе 6.0 комментариев к классу для этого класса.
Методы
initParams
protected void initParams()
Выполняет необходимые внутренние конфигурации и инициализации, чтобы позволить любой реализации JDBC RowSet начать использование стандартных средств, предоставляемых экземпляром BaseRowSet . Этот метод должен вызываться после того, как объект RowSet был создан, для правильной инициализации всех параметров. Этот метод не должен вызываться приложением, но вызывается из реализации RowSet , расширяющей этот класс.
addRowSetListener
public void addRowSetListener(RowSetListener listener)
Листнер будет уведомлен всякий раз, когда произойдет событие в этом объекте RowSet.
Например, слушателем может быть таблица или график, которые необходимо обновить, чтобы точно отразить текущее состояние объекта RowSet.
Примечание: если объект RowSetListener равен null, этот метод молча игнорирует значение null и не добавляет в набор слушателей null-ссылку.
Примечание: если слушатель уже установлен, и новый экземпляр RowSetListerner добавляется в набор слушателей, уже зарегистрированных для получения уведомлений о событиях от этого объекта RowSet.
- Параметры:
-
listener- объект, реализовавший интерфейсjavax.sql.RowSetListenerи желающий получать уведомления о событиях, происходящих в этом объектеRowSet; может быть null. - См. также:
removeRowSetListener(javax.sql.RowSetListener)
removeRowSetListener
public void removeRowSetListener(RowSetListener listener)
Удаляет указанный объект из списка слушателей этого объекта RowSet . Если заданный аргумент не является зарегистрированным слушателем, этот метод ничего не делает. Примечание: если объект RowSetListener равен null, этот метод молча игнорирует значение null.
- Параметры:
-
listener- объектRowSetListener, который находится в списке слушателей для этого объектаRowSet. - См. также:
addRowSetListener(javax.sql.RowSetListener)
notifyCursorMoved
protected void notifyCursorMoved()
throws SQLException Уведомляет всех слушателей, зарегистрированных с этим объектом RowSet , что его курсор перемещен.
Когда приложение вызывает метод перемещения курсора, этот метод перемещает курсор и затем вызывает этот метод внутренне. Приложение не должно вызывать этот метод напрямую.
- Исключения:
-
SQLException- если класс, расширяющий абстрактный классBaseRowSet, не реализует интерфейсRowSetили один из его под-интерфейсов.
notifyRowChanged
protected void notifyRowChanged()
throws SQLException Уведомляет всех слушателей, зарегистрированных с этим объектом RowSet , что одна из его строк изменена.
Когда приложение вызывает метод, изменяющий строку, такой как методы CachedRowSet insertRow, updateRow, или deleteRow, этот метод вызывает notifyRowChanged внутренне. Приложение не должно вызывать этот метод напрямую.
- Исключения:
-
SQLException- если класс, расширяющий абстрактный классBaseRowSet, не реализует интерфейсRowSetили один из его под-интерфейсов.
notifyRowSetChanged
protected void notifyRowSetChanged()
throws SQLException Уведомляет всех слушателей, зарегистрированных с этим объектом RowSet , что все его содержимое изменено.
Когда приложение вызывает методы, изменяющие все содержимое объекта RowSet , такие как методы CachedRowSet execute, populate, restoreOriginal, или release, этот метод вызывает notifyRowSetChanged внутренне (прямо или косвенно). Приложение не должно вызывать этот метод напрямую.
- Исключения:
-
SQLException- если класс, расширяющий абстрактный классBaseRowSet, не реализует интерфейсRowSetили один из его под-интерфейсов.
getCommand
public String getCommand()
Возвращает SQL-запрос, который является командой для этого объекта RowSet. Свойство команды содержит запрос, который будет выполнен для заполнения объекта RowSet.
SQL-запрос, возвращаемый этим методом, используется методами RowSet, такими как execute и populate, которые могут быть реализованы любым классом, расширяющим абстрактный класс BaseRowSet и реализующим один или несколько стандартных JSR-114 интерфейсов RowSet.
Команда используется читателем объекта RowSet для получения объекта ResultSet. Затем читатель считывает данные из объекта ResultSet и использует их для заполнения объекта RowSet.
Значение по умолчанию для свойства command - null.
- Возвращает:
- строку
String, которая является значением свойстваRowSetобъектаcommand; может бытьnull - См. также:
setCommand(java.lang.String)
setCommand
public void setCommand(String cmd)
throws SQLException Устанавливает свойство RowSet этого объекта command на заданный объект String и очищает параметры, если они были установлены для предыдущей команды.
Свойство command может быть не нужно, если объект RowSet получает свои данные из источника, не поддерживающего команды, например, электронная таблица или другой табличный файл. Таким образом, это свойство является необязательным и может быть null.
- Параметры:
-
cmd- объектString, содержащий SQL-запрос, который будет установлен как свойство команды этого объектаRowSet; может бытьnull, но не пустой строкой - Исключения:
-
SQLException- если в качестве значения команды предоставлена пустая строка - См. также:
getCommand()
getUrl
public String getUrl()
throws SQLException Возвращает JDBC-URL, который объект RowSet объекта javax.sql.Reader использует для подключения к реляционной базе данных с помощью драйвера, поддерживающего JDBC-технологию.
Свойство Url будет null , если базовый источник данных является источником данных, отличным от SQL, например, электронная таблица или источник данных XML.
- Возвращает:
- объект
String, содержащий JDBC-URL, используемый для установления соединения для этого объектаRowSet; может бытьnull(значение по умолчанию), если не установлено - Исключения:
-
SQLException- если произошла ошибка при получении значения URL - См. также:
setUrl(java.lang.String)
setUrl
public void setUrl(String url)
throws SQLException Устанавливает свойство Url для этого RowSet объекта на заданный String объект и устанавливает свойство имени источника данных на null. Свойство Url является JDBC-URL, которое используется при создании соединения с помощью драйвера, поддерживающего JDBC-технологию ("JDBC-драйвер"), и DriverManager. Правильный JDBC-URL для используемого драйвера можно найти в документации драйвера. Хотя существуют рекомендации по формированию JDBC-URL, поставщик драйвера может указать любой String объект, кроме объекта с длиной 0 (пустая строка).
Установка свойства Url необязательна, если соединения устанавливаются с помощью DataSource объекта вместо DriverManager. Драйвер будет использовать либо свойство URL, либо свойство dataSourceName для создания соединения, в зависимости от того, какое из них было указано последним. Если приложение использует JDBC-URL, оно должно загрузить JDBC-драйвер, который принимает JDBC-URL, прежде чем использовать RowSet объект для подключения к базе данных. RowSet объект будет использовать URL внутри для создания подключения к базе данных для чтения или записи данных.
- Параметры:
-
url-Stringобъект, содержащий JDBC-URL, который будет использоваться для установления соединения с базой данных для этогоRowSetобъекта; может бытьnull, но не должен быть пустой строкой - Исключения:
-
SQLException- если при установке свойства Url произошла ошибка или предоставленный параметр является строкой с длиной0(пустая строка) - См. также:
getUrl()
getDataSourceName
public String getDataSourceName()
Возвращает логическое имя, которое, при передаче в службу именования, использующую API Java Naming and Directory Interface (JNDI), позволит получить javax.sql.DataSource объект. Этот DataSource объект может быть использован для установления соединения с источником данных, который он представляет.
Пользователи должны установить либо свойство url, либо имя источника данных. Драйвер будет использовать свойство, установленное последним, для установления соединения.
- Возвращает:
Stringобъект, идентифицирующийDataSourceобъект, используемый для создания соединения; если логическое имя не было установлено, возвращаетсяnull.- См. также:
setDataSourceName(java.lang.String)
setDataSourceName
public void setDataSourceName(String name)
throws SQLException Устанавливает свойство имени источника данных для этого RowSet объекта на заданное логическое имя и устанавливает свойство Url этого RowSet объекта на null. Имя должно быть связано с DataSource объектом в службе именования JNDI, чтобы приложение могло выполнить поиск по этому имени и получить связанный с ним DataSource объект. Затем DataSource объект может быть использован для установления соединения с источником данных, который он представляет.
Пользователи должны установить либо свойство Url, либо свойство dataSourceName. Если оба свойства установлены, драйвер будет использовать свойство, установленное последним.
- Параметры:
-
name-Stringобъект с именем, которое может быть передано в службу именования, основанную на технологии JNDI, для полученияDataSourceобъекта, который может быть использован для получения соединения; может бытьnull, но не должен быть пустой строкой - Исключения:
-
SQLException- если в качестве имени источника данных предоставлена пустая строка - См. также:
getDataSourceName()
getUsername
public String getUsername()
Возвращает имя пользователя, используемое для создания подключения к базе данных. Поскольку оно не сериализуется, свойство username устанавливается во время выполнения перед вызовом метода execute.
- Возвращает:
Stringобъект, содержащий имя пользователя, предоставляемое источнику данных для создания соединения; может бытьnull(значение по умолчанию), если не задано- См. также:
setUsername(java.lang.String)
setUsername
public void setUsername(String name)
Устанавливает свойство username для этого RowSet объекта на заданное имя пользователя. Поскольку оно не сериализуется, свойство username устанавливается во время выполнения перед вызовом метода execute.
- Параметры:
-
name-Stringобъект, содержащий имя пользователя, предоставляемое источнику данных для создания соединения. Может быть null. - См. также:
getUsername()
getPassword
public String getPassword()
Возвращает пароль, используемый для создания подключения к базе данных для этого RowSet объекта. Поскольку свойство пароля не сериализуется, оно устанавливается во время выполнения перед вызовом метода execute. Значение по умолчанию - null.
- Возвращает:
Stringобъект, представляющий пароль, который должен быть предоставлен базе данных для создания соединения.- См. также:
setPassword(java.lang.String)
setPassword
public void setPassword(String pass)
Устанавливает пароль, используемый для создания подключения к базе данных для этого RowSet объекта, на заданный String объект. Поскольку свойство пароля не сериализуется, оно устанавливается во время выполнения перед вызовом метода execute.
- Параметры:
-
pass-Stringобъект, представляющий пароль, предоставляемый базе данных для создания соединения. Может быть null. - См. также:
getPassword()
setType
public void setType(int type)
throws SQLException Устанавливает тип для этого RowSet объекта на указанный тип. Тип по умолчанию - ResultSet.TYPE_SCROLL_INSENSITIVE.
- Параметры:
-
type- одно из следующих констант:ResultSet.TYPE_FORWARD_ONLY,ResultSet.TYPE_SCROLL_INSENSITIVE, илиResultSet.TYPE_SCROLL_SENSITIVE - Исключения:
-
SQLException- если предоставленный параметр не является одной из следующих констант:ResultSet.TYPE_FORWARD_ONLYилиResultSet.TYPE_SCROLL_INSENSITIVEResultSet.TYPE_SCROLL_SENSITIVE - См. также:
-
getConcurrency(),getType()
getType
public int getType()
throws SQLException Возвращает тип этого RowSet объекта. Тип изначально определяется оператором, который создал RowSet объект. RowSet объект может в любой момент вызвать метод setType для изменения своего типа. Значение по умолчанию - TYPE_SCROLL_INSENSITIVE.
- Возвращает:
- тип этого JDBC
RowSetобъекта, который должен быть одним из следующих:ResultSet.TYPE_FORWARD_ONLY,ResultSet.TYPE_SCROLL_INSENSITIVE, илиResultSet.TYPE_SCROLL_SENSITIVE - Исключения:
-
SQLException- если произошла ошибка при получении типа этогоRowSetобъекта - См. также:
setType(int)
setConcurrency
public void setConcurrency(int concurrency)
throws SQLException Устанавливает конкурентность для этого RowSet объекта на указанную конкурентность. Конкурентность по умолчанию для любого RowSet объекта (подключенного или отключенного) - ResultSet.CONCUR_UPDATABLE, но этот метод может быть вызван в любое время для изменения конкурентности.
- Параметры:
-
concurrency- одно из следующих констант:ResultSet.CONCUR_READ_ONLYилиResultSet.CONCUR_UPDATABLE - Исключения:
-
SQLException- если предоставленный параметр не является одной из следующих констант:ResultSet.CONCUR_UPDATABLEилиResultSet.CONCUR_READ_ONLY - См. также:
-
getConcurrency(),isReadOnly()
isReadOnly
public boolean isReadOnly()
Возвращает boolean, указывающее, является ли этот RowSet объект только для чтения. Любые попытки обновления объекта только для чтения приведут к возникновению SQLException. По умолчанию наборы строк могут быть обновляемыми, если обновления возможны.
- Возвращает:
-
trueесли этотRowSetобъект не может быть обновлен;falseв противном случае - См. также:
-
setConcurrency(int),setReadOnly(boolean)
setReadOnly
public void setReadOnly(boolean value)
Устанавливает свойство readOnly этого RowSet объекта на заданное boolean.
- Параметры:
-
value-trueдля указания, что этотRowSetобъект является только для чтения;falseдля указания, что он может быть обновлен
getTransactionIsolation
public int getTransactionIsolation()
Возвращает свойство изоляции транзакции для соединения этого RowSet объекта. Это свойство представляет уровень изоляции транзакции, запрошенный для использования в транзакциях.
Для RowSet реализаций, таких как CachedRowSet, которые работают в отключённой среде, SyncProvider объект предлагает дополнительные опции блокировки и целостности данных. Описанные ниже опции применимы только к подключённым RowSet объектам (JdbcRowSet объектам).
- Возвращает:
- одну из следующих констант:
Connection.TRANSACTION_NONE,Connection.TRANSACTION_READ_UNCOMMITTED,Connection.TRANSACTION_READ_COMMITTED,Connection.TRANSACTION_REPEATABLE_READ, илиConnection.TRANSACTION_SERIALIZABLE - См. также:
-
SyncFactory,SyncProvider,setTransactionIsolation(int)
setTransactionIsolation
public void setTransactionIsolation(int level)
throws SQLException Устанавливает свойство изоляции транзакций для этого объекта JDBC RowSet до заданного значения. СУБД будет использовать этот уровень изоляции транзакций для транзакций, если это возможно.
Для реализаций RowSet таких как CachedRowSet, работающих в отключённой среде, используемый объект SyncProvider предлагает дополнительные опции блокировки и целостности данных. Описанные ниже опции относятся только к подключенным объектам RowSet (объектам JdbcRowSet).
- Параметры:
-
level- одно из следующих значений, перечисленных в порядке возрастания:Connection.TRANSACTION_NONE,Connection.TRANSACTION_READ_UNCOMMITTED,Connection.TRANSACTION_READ_COMMITTED,Connection.TRANSACTION_REPEATABLE_READ, илиConnection.TRANSACTION_SERIALIZABLE - Исключения:
-
SQLException- если заданный параметр не является одним из констант Connection - См. также:
-
SyncFactory,SyncProvider,getTransactionIsolation()
getTypeMap
public Map<String,Class<?>> getTypeMap()
Возвращает карту типов, связанную с объектом Connection для этого объекта RowSet.
Драйверы, поддерживающие API JDBC 3.0, создают объекты Connection с связанной картой типов. Эта карта типов, которая изначально пуста, может содержать одно или несколько полных квалифицированных имён SQL и объекты Class указывающие на класс, к которому будет сопоставлено указанное SQL значение. Карта типов, указанная в соединении, используется для пользовательской сопоставления типов, если нет другой карты типов, которая её заменяет.
Если карта типов явно передана в метод, который может выполнить пользовательское сопоставление, эта карта типов заменяет карту типов соединения.
- Возвращаемое значение:
- объект
java.util.Map, являющийся картой типов для соединения объектаRowSet
setTypeMap
public void setTypeMap(Map<String,Class<?>> map)
Устанавливает заданный объект java.util.Map в качестве карты типов, связанной с объектом Connection для этого объекта RowSet. Пользовательское сопоставление, указанное в этой карте типов, будет использоваться, если метод явно не предоставит другую карту типов, в этом случае будет использоваться предоставленная карта.
- Параметры:
-
map- объектjava.util.Map, содержащий сопоставление между именами SQL типов для определённых пользователем типов (UDT) и классами в языке программирования Java. Каждый элемент в объектеMapсостоит из полностью квалифицированного имени SQL UDT и объектаClassдля реализацииSQLDataэтого UDT. Может бытьnull.
getMaxFieldSize
public int getMaxFieldSize()
throws SQLException Возвращает максимальное количество байтов, которое может использоваться для значения столбца в этом объекте RowSet. Это ограничение применяется только к столбцам, которые содержат значения следующих типов: BINARY, VARBINARY, LONGVARBINARY, CHAR, VARCHAR, и LONGVARCHAR. Если предел превышен, избыточные данные отбрасываются без сообщений об ошибках.
- Возвращаемое значение:
- значение
int, указывающее текущее максимальное ограничение размера столбца; ноль означает, что нет ограничения - Исключения:
-
SQLException- если произошла ошибка при определении внутреннего максимального предела размера столбца
setMaxFieldSize
public void setMaxFieldSize(int max)
throws SQLException Устанавливает максимальное количество байтов, которое может использоваться для значения столбца в этом объекте RowSet до заданного значения. Это ограничение применяется только к столбцам, которые содержат значения следующих типов: BINARY, VARBINARY, LONGVARBINARY, CHAR, VARCHAR, и LONGVARCHAR. Если предел превышен, избыточные данные отбрасываются без сообщений об ошибках. Для максимальной переносимости рекомендуется использовать значения, большие, чем 256.
- Параметры:
-
max- значениеint, указывающее новое максимальное ограничение размера столбца; ноль означает, что нет ограничения - Исключения:
-
SQLException- если (1) произошла ошибка при внутренней установке максимального предела размера столбца или (2) задан размер меньше 0
getMaxRows
public int getMaxRows()
throws SQLException Возвращает максимальное количество строк, которое может содержать этот объект RowSet. Если это ограничение превышено, избыточные строки отбрасываются без сообщений об ошибках.
- Возвращаемое значение:
- значение
int, указывающее текущее максимальное количество строк; ноль означает, что нет ограничения - Исключения:
-
SQLException- если произошла ошибка при определении внутреннего максимального предела строк, которые может содержать объектRowset
setMaxRows
public void setMaxRows(int max)
throws SQLException Устанавливает максимальное количество строк, которое может содержать этот объект RowSet до заданного значения. Если это ограничение превышено, избыточные строки отбрасываются без сообщений об ошибках.
- Параметры:
-
max- значениеint, указывающее текущее максимальное количество строк; ноль означает, что нет ограничения - Исключения:
-
SQLException- если произошла ошибка при установке максимального предела количества строк в объекте JDBCRowSet; или если max меньше0; или если max меньшеfetchSizeобъектаRowSet
setEscapeProcessing
public void setEscapeProcessing(boolean enable)
throws SQLException Устанавливает заданное значение boolean, определяющее, будет ли драйвер анализировать синтаксис экранирования и выполнять замену экранирования перед отправкой SQL-запросов в базу данных. По умолчанию драйвер выполняет обработку экранирования.
Примечание: Поскольку объекты PreparedStatement обычно анализируются до этого вызова, отключение обработки экранирования для подготовленных запросов, вероятно, не повлияет.
- Параметры:
-
enable-trueдля включения обработки экранирования;falseдля её отключения - Исключения:
-
SQLException- если произошла ошибка при настройке обработки синтаксиса экранирования в драйвере JDBC
getQueryTimeout
public int getQueryTimeout()
throws SQLException Возвращает максимальное количество секунд, которое драйвер будет ждать выполнения запроса. Если предел превышен, выбрасывается SQLException.
- Возвращаемое значение:
- текущее ограничение тайм-аута запроса в секундах; ноль означает, что нет ограничения
- Исключения:
-
SQLException- если произошла ошибка при определении значения тайм-аута запроса
setQueryTimeout
public void setQueryTimeout(int seconds)
throws SQLException Устанавливает максимальное количество секунд, которое драйвер будет ждать выполнения запроса до заданного значения. Если предел превышен, выбрасывается SQLException.
- Параметры:
-
seconds- новое ограничение тайм-аута запроса в секундах; ноль означает, что нет ограничения; должно быть не меньше нуля - Исключения:
-
SQLException- если произошла ошибка при установке тайм-аута запроса или значение тайм-аута меньше 0
getShowDeleted
public boolean getShowDeleted()
throws SQLException Возвращает значение boolean, указывающее, отображаются ли строки, помеченные для удаления, в наборе текущих строк. Значение по умолчанию - false.
Примечание: Разрешение видимости строк, помеченных для удаления, усложняет поведение некоторых методов. Однако большинство пользователей объектов RowSet могут просто игнорировать эту дополнительную деталь, потому что только сложные приложения, вероятно, захотят воспользоваться этой функцией.
- Возвращаемое значение:
-
trueесли удалённые строки видимы;falseв противном случае - Исключения:
-
SQLException- если произошла ошибка при определении видимости удалённых строк - См. также:
setShowDeleted(boolean)
setShowDeleted
public void setShowDeleted(boolean value)
throws SQLException Устанавливает свойство showDeleted до заданного значения boolean, которое определяет, отображаются ли строки, помеченные для удаления, в наборе текущих строк.
- Параметры:
-
value-trueесли удалённые строки должны быть показаны;falseв противном случае - Исключения:
-
SQLException- если произошла ошибка при установке видимости удалённых строк - См. также:
getShowDeleted()
getEscapeProcessing
public boolean getEscapeProcessing()
throws SQLException Определяет, включена ли обработка экранирования для этого объекта RowSet.
- Возвращаемое значение:
-
trueесли обработка экранирования включена;falseв противном случае - Исключения:
-
SQLException- если произошла ошибка при определении включения обработки экранирования или внутренний триггер обработки экранирования не был включён
setFetchDirection
public void setFetchDirection(int direction)
throws SQLException Даёт драйверу подсказку производительности о направлении обработки строк в этом объекте RowSet. Драйвер может проигнорировать эту подсказку.
Объект RowSet наследует свойства по умолчанию от объекта ResultSet, из которого он получил данные. Направление выборки по умолчанию для этого объекта ResultSet устанавливается объектом Statement, который его создал.
Этот метод применим к объекту RowSet только при подключении к базе данных с помощью драйвера JDBC.
Объект RowSet может использовать этот метод в любое время для изменения направления выборки.
- Параметры:
-
direction- одно изResultSet.FETCH_FORWARD,ResultSet.FETCH_REVERSE, илиResultSet.FETCH_UNKNOWN - Исключения:
-
SQLException- если типRowSetявляетсяTYPE_FORWARD_ONLYи заданное направление выборки неFETCH_FORWARDили если заданное направление выборки не является одним из ResultSet.FETCH_FORWARD, ResultSet.FETCH_REVERSE, или ResultSet.FETCH_UNKNOWN - См. также:
getFetchDirection()
getFetchDirection
public int getFetchDirection()
throws SQLException Возвращает текущее значение направления выборки для этого объекта RowSet. Тип по умолчанию - ResultSet.FETCH_FORWARD
- Возвращает:
- один из
ResultSet.FETCH_FORWARD,ResultSet.FETCH_REVERSE, илиResultSet.FETCH_UNKNOWN - Выбрасывает:
-
SQLException- если при определении текущего направления извлечения строк произошла ошибка - См. также:
setFetchDirection(int)
setFetchSize
public void setFetchSize(int rows)
throws SQLException Устанавливает размер извлечения для этого объекта RowSet в указанное количество строк. Размер извлечения дает JDBC-совместимому драйверу ("JDBC-драйверу") подсказку о количестве строк, которое следует извлечь из базы данных, когда для этого объекта RowSet потребуются дополнительные строки. Если указанный размер извлечения равен нулю, драйвер игнорирует это значение и сам решает, каким должен быть размер извлечения.
Объект RowSet наследует значения по умолчанию от объекта ResultSet, из которого он получил свои данные. Значение по умолчанию для размера извлечения этого объекта ResultSet устанавливается объектом Statement, который его создал.
Этот метод применим к объекту RowSet только при подключении к базе данных с помощью JDBC-драйвера. Для подключенных реализаций RowSet, таких как JdbcRowSet, этот метод оказывает прямое и немедленное воздействие на базовый JDBC-драйвер.
Объект RowSet может использовать этот метод в любое время для изменения своего значения размера извлечения.
Для реализаций RowSet, таких как CachedRowSet, работающих в отключённой среде, объект SyncProvider может использовать размер извлечения для опроса источника данных и получения количества строк, не превышающего размер извлечения и представляющих подмножество фактических строк, возвращаемых исходным запросом. Это различие в реализации зависит от конкретного объекта SyncProvider, используемого отключённым объектом RowSet.
- Параметры:
-
rows- количество строк для извлечения;0— позволить драйверу самостоятельно выбрать лучший размер извлечения; не должно быть меньше0или больше максимального количества строк, разрешенного для этого объектаRowSet(количество, возвращаемое методомgetMaxRows()) - Выбрасывает:
-
SQLException- если указанный размер извлечения меньше0или больше лимита максимального количества строк - См. также:
getFetchSize()
getFetchSize
public int getFetchSize()
throws SQLException Возвращает размер извлечения для этого объекта RowSet. Значение по умолчанию равно нулю.
- Возвращает:
- количество строк, рекомендуемое в качестве размера извлечения, когда объекту
RowSetнужны дополнительные строки из базы данных - Выбрасывает:
-
SQLException- если при определении количества строк в текущем размере извлечения произошла ошибка - См. также:
setFetchSize(int)
getConcurrency
public int getConcurrency()
throws SQLException Возвращает уровень одновременности для этого объекта RowSet. По умолчанию это CONCUR_UPDATABLE для подключенных и отключенных объектов RowSet.
Приложение может вызвать метод setConcurrency в любое время, чтобы изменить одновременность объекта RowSet.
- Возвращает:
- тип одновременности для этого объекта
RowSet, который должен быть одним из следующих:ResultSet.CONCUR_READ_ONLYилиResultSet.CONCUR_UPDATABLE - Выбрасывает:
-
SQLException- если при получении одновременности этого объектаRowSetпроизошла ошибка - См. также:
-
setConcurrency(int),isReadOnly()
setNull
public void setNull(int parameterIndex,
int sqlType)
throws SQLException Устанавливает указанный параметр в значение SQL NULL. Обратите внимание, что тип SQL параметра должен быть указан с помощью одного из кодов типов, определённых в java.sql.Types. Этот тип SQL указан во втором параметре.
Обратите внимание, что второй параметр сообщает СУБД о типе данных значения, устанавливаемого в NULL. Некоторые СУБД требуют эту информацию, поэтому она необходима для повышения портативности кода.
Значение параметра, установленное этим методом, хранится внутри и будет использоваться в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть реализованы в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
Вызовы метода getParams после вызова этого варианта setNull вернут массив Object, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — null. Второй элемент — значение, установленное для sqlType. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй — для второго и так далее. Иными словами, если второй параметр-заполнитель устанавливается в значение null, содержащий его массив будет вторым элементом массива, возвращаемого методом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, находится по индексу parameterIndex - 1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
sqlType- значениеint, являющееся одним из кодов типов SQL, определённых в классеTypes. Если предоставлен нестандартный sqlType, этот метод не выброситSQLException. Это позволяет неявно поддерживать нестандартные типы SQL. - Выбрасывает:
-
SQLException- если произошла ошибка доступа к базе данных или указанный индекс параметра находится вне допустимого диапазона - См. также:
getParams()
setNull
public void setNull(int parameterIndex,
int sqlType,
String typeName)
throws SQLException Устанавливает указанный параметр в значение SQL NULL. Хотя этот вариант метода setNull предназначен для параметров пользовательского определения и REF типов, этот метод может использоваться для установки нулевого параметра для любого типа JDBC. К пользовательским типам относятся STRUCT, DISTINCT, и JAVA_OBJECT, а также массивы с именами.
Примечание: Для обеспечения портативности приложения должны указывать код типа SQL и полное квалифицированное имя типа SQL при указании параметра NULL пользовательского определения или параметра REF типа. В случае пользовательского типа имя — это само имя типа параметра. Для параметра REF типа имя — это имя типа, на который ссылается параметр. Если JDBC-драйверу не нужна информация о коде типа или имени типа, он может её игнорировать.
Если у параметра нет пользовательского или REF типа, указанный параметр typeName игнорируется.
Значение параметра, установленное этим методом, хранится внутри и будет использоваться в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть реализованы в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
Вызовы метода getParams после вызова этого варианта setNull вернут массив Object, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — null. Второй элемент — значение, установленное для sqlType, а третий — значение, установленное для typeName. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй — для второго и так далее. Иными словами, если второй параметр-заполнитель устанавливается в значение null, содержащий его массив будет вторым элементом массива, возвращаемого методом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, находится по индексу parameterIndex - 1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
sqlType- значение изjava.sql.Types -
typeName- полное квалифицированное имя пользовательского типа SQL, которое игнорируется, если параметр не является типом пользовательского определения или значениемREF - Выбрасывает:
-
SQLException- если произошла ошибка или указанный индекс параметра находится вне допустимого диапазона - См. также:
getParams()
setBoolean
public void setBoolean(int parameterIndex,
boolean x)
throws SQLException Устанавливает указанный параметр в заданное значение boolean на языке программирования Java. Драйвер преобразует это значение в SQL BIT при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute, populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setByte
public void setByte(int parameterIndex,
byte x)
throws SQLException Устанавливает указанный параметр в заданное значение byte на языке программирования Java. Драйвер преобразует это значение в SQL TINYINT при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setShort
public void setShort(int parameterIndex,
short x)
throws SQLException Устанавливает указанный параметр в заданное значение short на языке программирования Java. Драйвер преобразует это значение в SQL SMALLINT при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setInt
public void setInt(int parameterIndex,
int x)
throws SQLException Устанавливает указанный параметр в целое число int на языке программирования Java. Драйвер преобразует это значение в SQL INTEGER при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setLong
public void setLong(int parameterIndex,
long x)
throws SQLException Устанавливает указанный параметр в заданное значение long на языке программирования Java. Драйвер преобразует это значение в SQL BIGINT при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setFloat
public void setFloat(int parameterIndex,
float x)
throws SQLException Устанавливает указанный параметр в заданное значение float на языке программирования Java. Драйвер преобразует это значение в SQL FLOAT при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setDouble
public void setDouble(int parameterIndex,
double x)
throws SQLException Устанавливает указанный параметр в заданное значение double на языке программирования Java. Драйвер преобразует это значение в SQL DOUBLE при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе. S
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setBigDecimal
public void setBigDecimal(int parameterIndex,
BigDecimal x)
throws SQLException Устанавливает указанный параметр в заданное значение java.lang.BigDecimal. Драйвер преобразует это значение в SQL NUMERIC при отправке в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet интерфейсов.
Примечание: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде объектаRowSet, который необходимо установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится за пределами допустимого диапазона - См. также:
getParams()
setString
public void setString(int parameterIndex,
String x)
throws SQLException Устанавливает указанный параметр в заданное значение String. Драйвер преобразует это значение в SQL VARCHAR или LONGVARCHAR значение (в зависимости от размера аргумента по отношению к ограничениям драйвера на VARCHAR значения) при отправке его в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр - 1, второй - 2 и т.д.; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра выходит за пределы допустимых значений - См. также:
getParams()
setBytes
public void setBytes(int parameterIndex,
byte[] x)
throws SQLException Устанавливает указанный параметр в заданный массив байтов. Драйвер преобразует это значение в SQL VARBINARY или LONGVARBINARY значение (в зависимости от размера аргумента по отношению к ограничениям драйвера на VARBINARY значения) при отправке его в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр - 1, второй - 2 и т.д.; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра выходит за пределы допустимых значений - См. также:
getParams()
setDate
public void setDate(int parameterIndex,
Date x)
throws SQLException Устанавливает указанный параметр в заданное java.sql.Date значение. Драйвер преобразует это значение в SQL DATE значение при отправке его в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта setDate вернут массив со значением, которое нужно установить для параметра-заполнителя с номером parameterIndex, являющимся объектом Date, переданным во втором параметре. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет индекс parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр - 1, второй - 2 и т.д.; должен быть1или больше -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка или индекс параметра выходит за пределы допустимых значений - См. также:
getParams()
setTime
public void setTime(int parameterIndex,
Time x)
throws SQLException Устанавливает указанный параметр в заданное java.sql.Time значение. Драйвер преобразует это значение в SQL TIME значение при отправке его в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта метода setTime вернут массив установленных параметров. Параметр, который нужно установить для параметра-заполнителя с номером parameterIndex, будет объектом Time, который был установлен как второй параметр этого метода.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет индекс parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр - 1, второй - 2 и т.д.; должен быть1или больше -
x- объектjava.sql.Time, который должен быть установлен как значение для параметра-заполнителя parameterIndex - Исключения:
-
SQLException- если произошла ошибка или индекс параметра выходит за пределы допустимых значений - См. также:
getParams()
setTimestamp
public void setTimestamp(int parameterIndex,
Timestamp x)
throws SQLException Устанавливает указанный параметр в заданное java.sql.Timestamp значение. Драйвер преобразует это значение в SQL TIMESTAMP значение при отправке его в базу данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта setTimestamp вернут массив со значением параметра-заполнителя с номером parameterIndex, являющимся объектом Timestamp, переданным во втором параметре. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет индекс parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр - 1, второй - 2 и т.д.; должен быть1или больше -
x- объектjava.sql.Timestamp - Исключения:
-
SQLException- если произошла ошибка или индекс параметра выходит за пределы допустимых значений - См. также:
getParams()
setAsciiStream
public void setAsciiStream(int parameterIndex,
InputStream x,
int length)
throws SQLException Устанавливает указанный параметр в заданный объект java.io.InputStream, который будет содержать указанное количество байтов. Содержимое потока будет считано и отправлено в базу данных. Этот метод генерирует исключение SQLException, если количество прочитанных и отправленных в базу данных байтов не равно length.
Если очень большое значение ASCII вводится в параметр LONGVARCHAR, может быть более практичным отправить его через объект java.io.InputStream. Драйвер JDBC будет считывать данные из потока по мере необходимости до достижения конца файла. Драйвер выполнит необходимую конвертацию из ASCII в формат базы данных CHAR.
Примечание: Этот объект потока может быть стандартным объектом потока Java или вашим собственным подклассом, реализующим стандартный интерфейс.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных JSR-114 RowSet интерфейсов.
Примечание: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова setAsciiStream вернут массив, содержащий установленные значения параметров. Элемент в массиве, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива - заданный объект java.io.InputStream. Второй элемент - значение, установленное для length. Третий элемент - внутренняя BaseRowSet константа, указывающая, что поток, переданный в этот метод, представляет собой поток ASCII. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент - значение для первого параметра-заполнителя, второй элемент - значение для второго параметра-заполнителя и так далее. Другими словами, если входной поток устанавливается как значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет индекс parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- поток ввода Java, содержащий значение параметра ASCII -
length- количество байтов в потоке. Это количество байтов, которое драйвер отправит в СУБД; значения 0 или меньше не определены, но приведут к исключению недействительной длины, которое будет выброшено базовым драйвером JDBC. - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или при подключении к источнику данных количество байтов, которые драйвер считывает и отправляет в базу данных, не равно количеству байтов, указанному в length - См. также:
getParams()
setAsciiStream
public void setAsciiStream(int parameterIndex,
InputStream x)
throws SQLException Устанавливает указанный параметр в команде объекта RowSet в соответствии с заданным потоком ввода. Когда очень большое значение ASCII вводится в параметр LONGVARCHAR, может быть удобнее отправлять его через java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла. Драйвер JDBC выполнит необходимую конвертацию из ASCII в формат символов базы данных.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации драйвера JDBC, чтобы определить, может ли использование версии setAsciiStream с параметром длины быть более эффективным.
- Параметры:
-
parameterIndex- первый параметр — 1, второй — 2 и так далее… -
x- поток ввода Java, содержащий значение параметра ASCII - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван для закрытого объектаPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С момента:
- 1.6
setBinaryStream
public void setBinaryStream(int parameterIndex,
InputStream x,
int length)
throws SQLException Устанавливает указанный параметр в соответствии с данным объектом потока java.io.InputStream, который будет содержать указанное количество байтов. Содержимое потока будет считано и отправлено в базу данных. Этот метод выбрасывает объект SQLException, если количество считанных и отправленных байтов в базу данных не равно length.
Когда очень большое двоичное значение вводится в параметр LONGVARBINARY, может быть удобнее отправлять его через объект java.io.InputStream. Драйвер, совместимый с технологией JDBC, будет считывать данные из потока по мере необходимости до достижения конца файла.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде объекта RowSet при вызове метода execute. Такие методы, как execute и populate, должны быть предоставлены в любом классе, который расширяет этот класс и реализует один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова setBinaryStream вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.io.InputStream. Второй элемент — установленное значение для length. Третий элемент — внутренняя константа BaseRowSet, указывающая, что поток, переданный в этот метод, представляет собой двоичный поток. Номер параметра указан позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и так далее. Другими словами, если устанавливаемый поток ввода представляет значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий номеру параметра-заполнителя parameterIndex, имеет номер parameterIndex - 1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- поток ввода, содержащий двоичное значение, которое должно быть установлено -
length- количество байтов в потоке; значения 0 или меньше не определены, но приведут к исключению недействительной длины, которое будет выброшено базовым драйвером JDBC. - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или при подключении к источнику данных количество байтов, которые драйвер считывает и отправляет в базу данных, не равно количеству байтов, указанному в length - См. также:
getParams()
setBinaryStream
public void setBinaryStream(int parameterIndex,
InputStream x)
throws SQLException Устанавливает указанный параметр в команде этого объекта RowSet в соответствии с заданным потоком ввода. Когда очень большое двоичное значение вводится в параметр LONGVARBINARY, может быть удобнее отправлять его через объект java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации драйвера JDBC, чтобы определить, может ли использование версии setBinaryStream с параметром длины быть более эффективным.
- Параметры:
-
parameterIndex- первый параметр — 1, второй — 2 и так далее… -
x- поток ввода Java, содержащий двоичное значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван для закрытого объектаPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С момента:
- 1.6
setUnicodeStream
@Deprecated
public void setUnicodeStream(int parameterIndex,
InputStream x,
int length)
throws SQLException Устарело. Следует использовать getCharacterStream.
Устанавливает указанный параметр в соответствии с данным объектом потока java.io.InputStream, который будет содержать указанное количество байтов. Содержимое потока будет считано и отправлено в базу данных. Этот метод выбрасывает SQLException, если количество считанных и отправленных байтов в базу данных не равно length.
Когда очень большое значение Unicode вводится в параметр LONGVARCHAR, может быть удобнее отправлять его через объект java.io.InputStream. Драйвер, совместимый с технологией JDBC, будет считывать данные из потока по мере необходимости до достижения конца файла. Драйвер выполнит необходимую конвертацию из Unicode в формат базы данных CHAR. Формат байтов потока Unicode должен быть Java UTF-8, как определено в спецификации Java Virtual Machine.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Этот метод устарел; следует использовать метод getCharacterStream.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено как соответствующий параметр в команде объекта RowSet при вызове метода execute. Вызовы метода getParams после вызова setUnicodeStream вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.io.InputStream. Второй элемент — установленное значение для length. Третий элемент — внутренняя константа BaseRowSet, указывающая, что поток, переданный в этот метод, представляет собой поток Unicode. Номер параметра указан позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и так далее. Другими словами, если устанавливаемый поток ввода представляет значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий номеру параметра-заполнителя parameterIndex, имеет номер parameterIndex - 1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объектjava.io.InputStream, содержащий значение параметра UNICODE -
length- количество байтов в потоке ввода - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или количество байтов, которые драйвер считывает и отправляет в базу данных, не равно количеству байтов, указанному в length - См. также:
getParams()
setCharacterStream
public void setCharacterStream(int parameterIndex,
Reader reader,
int length)
throws SQLException Устанавливает указанный параметр в заданный объект java.io.Reader, который будет содержать указанное количество символов. Содержимое ридера будет считано и отправлено в базу данных. Этот метод выбрасывает исключение SQLException, если количество считанных и отправленных в базу данных байтов не равно length.
При вводе очень большого значения Юникода в параметр LONGVARCHAR, может быть более целесообразно отправить его через объект Reader. Драйвер, поддерживающий технологию JDBC, будет читать данные из потока по мере необходимости до достижения конца файла. Драйвер выполнит все необходимые преобразования из Юникода в формат CHAR базы данных. Формат байтов потока Юникода должен быть Java UTF-8, как определено в спецификации Java Virtual Machine.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова setCharacterStream вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.io.Reader. Второй элемент — значение, установленное для length. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и так далее. Другими словами, если устанавливаемый ридер — это значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий номеру параметра-заполнителя parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который нужно установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
reader- объектReader, содержащий данные Юникода -
length- количество символов в потоке; длины 0 или меньше не определены, но приведут к исключению с ошибкой длины в подлежащем драйвере JDBC. - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или при подключении к источнику данных количество байтов, считанных и отправленных драйвером в базу данных, не равно количеству байтов, указанному в length - См. также:
getParams()
setCharacterStream
public void setCharacterStream(int parameterIndex,
Reader reader)
throws SQLException Устанавливает указанный параметр в команде этого объекта RowSet в заданный объект Reader. При вводе очень большого значения Юникода в параметр LONGVARCHAR, может быть более целесообразно отправить его через объект java.io.Reader. Данные будут читаться из потока по мере необходимости до достижения конца файла. Драйвер JDBC выполнит все необходимые преобразования из Юникода в формат символов базы данных.
Примечание: Этот объект потока может быть стандартным объектом потока Java или собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации драйвера JDBC, чтобы определить, не будет ли использование версии setCharacterStream, принимающей параметр длины, более эффективным.
- Параметры:
-
parameterIndex- первый параметр — 1, второй — 2 и так далее -
reader- объектjava.io.Reader, содержащий данные Юникода - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван для закрытого объектаPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С момента:
- 1.6
setObject
public void setObject(int parameterIndex,
Object x,
int targetSqlType,
int scale)
throws SQLException Устанавливает указанный параметр в объект Object языка программирования Java. Второй параметр должен быть типа Object. Для целочисленных значений следует использовать эквивалентные объекты java.lang. Например, используйте класс Integer для int.
Драйвер преобразует этот объект в указанный целевой тип SQL перед отправкой его в базу данных. Если объект имеет пользовательское отображение (является классом, реализующим SQLData ), драйвер должен вызвать метод SQLData.writeSQL для записи объекта в поток данных SQL. Если же объект является классом, реализующим Ref, Blob, Clob, Struct или Array, драйвер должен передать его в базу данных как значение соответствующего типа SQL.
Обратите внимание, что этот метод может использоваться для передачи абстрактных типов данных, специфичных для базы данных.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта setObject вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — экземпляр Object, второй элемент — значение, установленное для targetSqlType. Третий элемент — значение, установленное для scale, которое драйвер проигнорирует, если тип устанавливаемого объекта не является java.sql.Types.NUMERIC или java.sql.Types.DECIMAL. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и так далее. Другими словами, если устанавливаемый объект — это значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий номеру параметра-заполнителя parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который нужно установить. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объектObject, содержащий значение входного параметра; должен быть типаObject -
targetSqlType- тип SQL (как определено вjava.sql.Types), который нужно отправить в базу данных. Аргументscaleможет дополнительно квалифицировать этот тип. Если предоставлен нестандартный targetSqlType, этот метод не выброситSQLException. Это позволяет неявно поддерживать нестандартные типы SQL. -
scale- для типовjava.sql.Types.DECIMALиjava.sql.Types.NUMERIC, это число цифр после десятичной точки. Для всех остальных типов это значение будет проигнорировано. - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится вне границ - См. также:
getParams()
setObject
public void setObject(int parameterIndex,
Object x,
int targetSqlType)
throws SQLException Устанавливает значение указанного параметра с данным значением Object. Этот метод похож на setObject(int parameterIndex, Object x, int
targetSqlType, int scale), за исключением того, что предполагает масштаб ноль.
Значение параметра, установленное этим методом, хранится внутри и будет предоставлено в качестве соответствующего параметра в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта setObject вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — экземпляр Object, второй элемент — значение, установленное для targetSqlType. Номер параметра определяется позицией элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и так далее. Другими словами, если устанавливаемый объект — это значение для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом в массиве, возвращаемом getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий номеру параметра-заполнителя parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть задан. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объект, содержащий значение входного параметра; должен быть типаObject -
targetSqlType- тип SQL (как определено вjava.sql.Types) для отправки в базу данных. Если предоставлен нестандартный targetSqlType, этот метод не будет выбрасыватьSQLException. Это позволяет неявно поддерживать нестандартные типы SQL. - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится вне границ - См. также:
getParams()
setObject
public void setObject(int parameterIndex,
Object x)
throws SQLException Устанавливает указанный параметр в объект Object на языке программирования Java. Второй параметр должен быть типа Object. Для целочисленных значений следует использовать соответствующие объекты java.lang. Например, для целого числа используйте класс Integer.
Спецификация JDBC определяет стандартное отображение типов Java Object в типы SQL. Драйвер будет использовать это стандартное отображение для преобразования данного объекта в соответствующий тип SQL перед отправкой его в базу данных. Если у объекта есть пользовательское отображение (он является классом, реализующим интерфейс SQLData), драйвер должен вызвать метод SQLData.writeSQL для записи объекта в поток данных SQL.
Если, с другой стороны, объект реализует интерфейс Ref, Clob, Struct, или Array, драйвер должен передать его в базу данных как значение соответствующего типа SQL.
Этот метод выбрасывает исключение, если существует неоднозначность, например, если объект реализует более одного интерфейса.
Обратите внимание, что этот метод можно использовать для передачи абстрактных типов данных, специфичных для базы данных.
Значение параметра, заданное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, который расширяет этот класс и реализует один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
После вызова этого метода вызов метода getParams вернёт массив объектов текущих параметров команды, который будет включать объект Object, установленный для параметра-заполнителя с номером parameterIndex. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть задан. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объект, содержащий значение входного параметра - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или существует неоднозначность в реализации объекта, который устанавливается - См. также:
getParams()
setRef
public void setRef(int parameterIndex,
Ref ref)
throws SQLException Устанавливает указанный параметр в объект Ref на языке программирования Java. Драйвер преобразует его в значение SQL REF при отправке в базу данных. Внутренне, Ref представлен как SerialRef для обеспечения сериализуемости.
Значение параметра, заданное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, который расширяет этот класс и реализует один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
После вызова этого метода вызов метода getParams вернёт массив объектов текущих параметров команды, который будет включать объект Ref, установленный для параметра-заполнителя с номером parameterIndex. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть задан. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
ref- объектRef, представляющий значение SQLREF; не может быть null - Исключения:
-
SQLException- если произошла ошибка, индекс параметра находится вне границ или объектRefимеет значениеnull; или объектRefвозвращает имя базового типаnull. - См. также:
-
getParams(),SerialRef
setBlob
public void setBlob(int parameterIndex,
Blob x)
throws SQLException Устанавливает указанный параметр в объект Blob на языке программирования Java. Драйвер преобразует его в значение SQL BLOB при отправке в базу данных. Внутренне, Blob представлен как SerialBlob для обеспечения сериализуемости.
Значение параметра, заданное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, который расширяет этот класс и реализует один или несколько стандартных интерфейсов JSR-114 RowSet. ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
После вызова этого метода вызов метода getParams вернёт массив объектов текущих параметров команды, который будет включать объект Blob, установленный для параметра-заполнителя с номером parameterIndex. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть задан. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объектBlob, представляющий значение SQLBLOB - Исключения:
-
SQLException- если произошла ошибка или индекс параметра находится вне границ - См. также:
-
getParams(),SerialBlob
setClob
public void setClob(int parameterIndex,
Clob x)
throws SQLException Устанавливает указанный параметр в объект Clob на языке программирования Java. Драйвер преобразует его в значение SQL CLOB при отправке в базу данных. Внутренне, Clob представлен как SerialClob для обеспечения сериализуемости.
Значение параметра, заданное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, который расширяет этот класс и реализует один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
После вызова этого метода вызов метода getParams вернёт массив объектов текущих параметров команды, который будет включать объект Clob, установленный для параметра-заполнителя с номером parameterIndex. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть задан. Первый параметр — 1, второй — 2 и так далее; должен быть1или больше -
x- объектClob, представляющий значение SQLCLOB; не может быть null - Исключения:
-
SQLException- если произошла ошибка; индекс параметра находится вне границ или объектClobимеет значение null - См. также:
-
getParams(),SerialBlob
setArray
public void setArray(int parameterIndex,
Array array)
throws SQLException Устанавливает указанный параметр в объект Array в языке программирования Java. Драйвер преобразует это в значение SQL ARRAY при отправке его в базу данных. Внутренне, Array представлено как SerialArray для обеспечения сериализуемости.
Значение параметра, установленное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
Примечание: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
После вызова этого метода вызов метода getParams вернёт массив объектов текущих параметров команды, который будет включать объект Array, установленный для параметра-заполнителя с номером parameterIndex. Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и т. д.; должен быть1или больше -
array- объектArray, представляющий значение SQLARRAY; не может быть null. ОбъектArray, переданный в этот метод, должен возвращать не null Object для всех вызовов методаgetArray(). Значение null вызовет исключениеSQLException. - Исключения:
-
SQLException- если произошла ошибка; индекс параметра вне диапазона илиARRAYравно null - См. также:
-
getParams(),SerialArray
setDate
public void setDate(int parameterIndex,
Date x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданный объект java.sql.Date. Когда СУБД не хранит информацию о часовом поясе, драйвер использует заданный объект Calendar для построения значения SQL DATE для отправки в базу данных. С объектом Calendar, драйвер может рассчитать дату с учётом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс виртуальной машины, на которой выполняется приложение.
Значение параметра, установленное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определен в этом классе.
Вызовы метода getParams после вызова этого варианта setDate вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.sql.Date. Второй элемент — значение, установленное для cal. Номер параметра определяется положением элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и т.д. Другими словами, если устанавливаемая дата является значением для второго параметра-заполнителя, массив, содержащий её, будет вторым элементом массива, возвращаемого getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и т. д.; должен быть1или больше -
x- объектjava.sql.Date, представляющий значение SQLDATE -
cal- объектjava.util.Calendarдля использования при построении даты - Исключения:
-
SQLException- если произошла ошибка или индекс параметра вне диапазона - См. также:
getParams()
setTime
public void setTime(int parameterIndex,
Time x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданный объект java.sql.Time. Драйвер преобразует это в значение SQL TIME при отправке в базу данных.
Если СУБД не хранит информацию о часовом поясе, драйвер использует заданный объект Calendar для построения значения SQL TIME для отправки в базу данных. С объектом Calendar, драйвер может рассчитать дату с учётом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс виртуальной машины, на которой выполняется приложение.
Значение параметра, установленное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
Вызовы метода getParams после вызова этого варианта setTime вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.sql.Time. Второй элемент — значение, установленное для cal. Номер параметра определяется положением элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и т.д. Другими словами, если устанавливаемое время является значением для второго параметра-заполнителя, массив, содержащий его, будет вторым элементом массива, возвращаемого getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и т. д.; должен быть1или больше -
x- объектjava.sql.Time -
cal- объектjava.util.Calendar, который драйвер может использовать для построения времени - Исключения:
-
SQLException- если произошла ошибка или индекс параметра вне диапазона - См. также:
getParams()
setTimestamp
public void setTimestamp(int parameterIndex,
Timestamp x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданный объект java.sql.Timestamp. Драйвер преобразует это в значение SQL TIMESTAMP при отправке в базу данных.
Если СУБД не хранит информацию о часовом поясе, драйвер использует заданный объект Calendar для построения значения SQL TIMESTAMP для отправки в базу данных. С объектом Calendar, драйвер может рассчитать метку времени с учётом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс виртуальной машины, на которой выполняется приложение.
Значение параметра, установленное этим методом, хранится внутри и будет передано как соответствующий параметр в команде этого объекта RowSet при вызове метода execute. Методы, такие как execute и populate, должны быть предоставлены в любом классе, расширяющем этот класс и реализующем один или несколько стандартных интерфейсов JSR-114 RowSet.
ПРИМЕЧАНИЕ: JdbcRowSet не требует метода populate, так как он не определён в этом классе.
Вызовы метода getParams после вызова этого варианта setTimestamp вернут массив, содержащий установленные значения параметров. В этом массиве элемент, представляющий значения, установленные этим методом, сам будет массивом. Первый элемент этого массива — заданный объект java.sql.Timestamp. Второй элемент — значение, установленное для cal. Номер параметра определяется положением элемента в массиве, возвращаемом методом getParams, где первый элемент — значение для первого параметра-заполнителя, второй элемент — значение для второго параметра-заполнителя и т.д. Другими словами, если устанавливаемая метка времени является значением для второго параметра-заполнителя, массив, содержащий её, будет вторым элементом массива, возвращаемого getParams.
Обратите внимание, что поскольку нумерация элементов в массиве начинается с нуля, элемент массива, соответствующий параметру-заполнителю с номером parameterIndex, имеет номер parameterIndex -1.
- Параметры:
-
parameterIndex- порядковый номер параметра-заполнителя в команде этого объектаRowSet, который должен быть установлен. Первый параметр — 1, второй — 2 и т. д.; должен быть1или больше -
x- объектjava.sql.Timestamp -
cal- объектjava.util.Calendar, который драйвер может использовать для построения метки времени - Исключения:
-
SQLException- если произошла ошибка или индекс параметра вне диапазона - См. также:
getParams()
clearParameters
public void clearParameters()
throws SQLException Очищает все текущие значения параметров в внутренней представлении параметров этого объекта RowSet для команды этого объекта RowSet при её выполнении.
В общем случае значения параметров сохраняются для повторного использования в команде этого объекта RowSet. Установка значения параметра с помощью методов-сеттеров автоматически очищает значение указанного параметра и заменяет его новым заданным значением.
Этот метод вызывается внутри методом setCommand для очистки всех параметров, установленных для предыдущей команды.
Кроме того, этот метод отличается от метода initParams тем, что сохраняет схему объекта RowSet.
- Возможные исключения:
-
SQLException- если при очистке параметров произошла ошибка
getParams
public Object[] getParams()
throws SQLException Возвращает массив, содержащий значения параметров (как объектов, так и примитивных типов), установленных для команды этого объекта RowSet и генерирует объект SQLException, если не все параметры были установлены. Перед отправкой команды в базу данных для выполнения эти параметры будут заменены на параметры-заполнители в объекте PreparedStatement , который является командой для реализации RowSet , расширяющей класс BaseRowSet.
Каждый элемент массива, который возвращается, представляет собой экземпляр Object, содержащий значения параметров, предоставленных методу-сеттеру. Порядок элементов определяется значением, предоставленным для parameterIndex. Если метод-сеттер принимает только индекс параметра и значение для установки (возможно, null), элемент массива будет содержать значение для установки (которое будет выражено как Object). Если есть дополнительные параметры, элемент массива сам будет массивом, содержащим значение для установки и любые дополнительные значения параметров, предоставленные методу-сеттеру. Если метод устанавливает поток, элемент массива включает тип потока, предоставляемого методу. Эти дополнительные параметры предназначены для использования драйвером или базой данных и могут использоваться или не использоваться.
ПРИМЕЧАНИЕ: Значения параметров хранилища типов Array, Blob, Clob и Ref возвращаются как SerialArray, SerialBlob, SerialClob и SerialRef соответственно.
- Возвращаемое значение:
- массив экземпляров
Object, который включает значения параметров, которые могут быть установлены в команде объектаRowSet; пустой массив, если параметры не были установлены - Возможные исключения:
-
SQLException- если при получении массива параметров объектаRowSetпроизошла ошибка или если не все параметры были установлены
setNull
public void setNull(String parameterName,
int sqlType)
throws SQLException Устанавливает указанный параметр в SQL NULL.
Примечание: Необходимо указать тип SQL параметра.
- Параметры:
-
parameterName- имя параметра -
sqlType- код типа SQL, определенный вjava.sql.Types - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
setNull
public void setNull(String parameterName,
int sqlType,
String typeName)
throws SQLException Устанавливает указанный параметр в SQL NULL. Эта версия метода setNull должна использоваться для параметров пользовательских типов и REF. Примерами пользовательских типов являются: STRUCT, DISTINCT, JAVA_OBJECT и именованные массивы.
Примечание: Для обеспечения переносимости приложения необходимо указать код типа SQL и полное имя типа SQL при указании параметра NULL пользовательского типа или REF. В случае пользовательского типа имя является именем типа самого параметра. Для параметра REF имя - это имя типа, на который ссылается параметр. Если JDBC драйверу не требуется информация о коде типа или имени типа, он может её проигнорировать. Несмотря на то, что он предназначен для параметров пользовательского и REF типа, этот метод может использоваться для установки нулевого параметра любого типа JDBC. Если параметр не имеет пользовательского или REF типа, заданное имя типа игнорируется.
- Параметры:
-
parameterName- имя параметра -
sqlType- значение изjava.sql.Types -
typeName- полное квалифицированное имя SQL пользовательского типа; игнорируется, если параметр не является пользовательским типом или SQLREFзначением - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
setBoolean
public void setBoolean(String parameterName,
boolean x)
throws SQLException Устанавливает указанный параметр в заданное Java значение boolean. Драйвер преобразует это в значение SQL BIT или BOOLEAN при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setByte
public void setByte(String parameterName,
byte x)
throws SQLException Устанавливает указанный параметр в заданное Java значение byte. Драйвер преобразует это в значение SQL TINYINT при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setShort
public void setShort(String parameterName,
short x)
throws SQLException Устанавливает указанный параметр в заданное Java значение short. Драйвер преобразует это в значение SQL SMALLINT при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setInt
public void setInt(String parameterName,
int x)
throws SQLException Устанавливает указанный параметр в заданное Java значение int. Драйвер преобразует это в значение SQL INTEGER при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setLong
public void setLong(String parameterName,
long x)
throws SQLException Устанавливает указанный параметр в заданное Java значение long. Драйвер преобразует это в значение SQL BIGINT при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setFloat
public void setFloat(String parameterName,
float x)
throws SQLException Устанавливает указанный параметр в заданное Java значение float. Драйвер преобразует это в значение SQL FLOAT при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setDouble
public void setDouble(String parameterName,
double x)
throws SQLException Устанавливает указанный параметр в заданное Java значение double. Драйвер преобразует это в значение SQL DOUBLE при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setBigDecimal
public void setBigDecimal(String parameterName,
BigDecimal x)
throws SQLException Устанавливает указанный параметр в заданное значение java.math.BigDecimal. Драйвер преобразует это в значение SQL NUMERIC при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Возможные исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытого объектаCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С момента:
- 1.4
- См. также:
getParams()
setString
public void setString(String parameterName,
String x)
throws SQLException Устанавливает указанный параметр в заданное значение Java. Драйвер преобразует это значение в SQL VARCHAR или LONGVARCHAR значение (в зависимости от размера аргумента относительно ограничений драйвера на VARCHAR значения) при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setBytes
public void setBytes(String parameterName,
byte[] x)
throws SQLException Устанавливает указанный параметр в заданный массив байтов Java. Драйвер преобразует это в SQL VARBINARY или LONGVARBINARY значение (в зависимости от размера аргумента относительно ограничений драйвера на VARBINARY значения) при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setTimestamp
public void setTimestamp(String parameterName,
Timestamp x)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Timestamp. Драйвер преобразует это в SQL TIMESTAMP значение при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setAsciiStream
public void setAsciiStream(String parameterName,
InputStream x,
int length)
throws SQLException Устанавливает указанный параметр в заданный поток ввода, содержащий указанное количество байтов. При вводе очень большого ASCII значения в параметр LONGVARCHAR, может быть удобнее отправить его через java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла. JDBC драйвер выполнит необходимые преобразования из ASCII в формат символов базы данных.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
- Параметры:
-
parameterName- имя параметра -
x- поток ввода Java, содержащий значение параметра ASCII -
length- количество байтов в потоке - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
setBinaryStream
public void setBinaryStream(String parameterName,
InputStream x,
int length)
throws SQLException Устанавливает указанный параметр в заданный поток ввода, содержащий указанное количество байтов. При вводе очень большого двоичного значения в параметр LONGVARBINARY, может быть удобнее отправить его через объект java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
- Параметры:
-
parameterName- имя параметра -
x- поток ввода java, содержащий двоичное значение параметра -
length- количество байтов в потоке - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
setCharacterStream
public void setCharacterStream(String parameterName,
Reader reader,
int length)
throws SQLException Устанавливает указанный параметр в заданный объект Reader, имеющий указанное количество символов. При вводе очень большого UNICODE значения в параметр LONGVARCHAR, может быть удобнее отправить его через объект java.io.Reader. Данные будут считываться из потока по мере необходимости до достижения конца файла. JDBC драйвер выполнит необходимые преобразования из UNICODE в формат символов базы данных.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
- Параметры:
-
parameterName- имя параметра -
reader- объектjava.io.Reader, содержащий UNICODE данные, используемые в качестве указанного параметра -
length- количество символов в потоке - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.4
setAsciiStream
public void setAsciiStream(String parameterName,
InputStream x)
throws SQLException Устанавливает указанный параметр в заданный поток ввода. При вводе очень большого ASCII значения в параметр LONGVARCHAR, может быть удобнее отправить его через java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла. JDBC драйвер выполнит необходимые преобразования из ASCII в формат символов базы данных.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setAsciiStream, принимающей параметр длины.
- Параметры:
-
parameterName- имя параметра -
x- поток ввода Java, содержащий значение параметра ASCII - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.6
setBinaryStream
public void setBinaryStream(String parameterName,
InputStream x)
throws SQLException Устанавливает указанный параметр в заданный поток ввода. При вводе очень большого двоичного значения в параметр LONGVARBINARY, может быть удобнее отправить его через объект java.io.InputStream. Данные будут считываться из потока по мере необходимости до достижения конца файла.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setBinaryStream, принимающей параметр длины.
- Параметры:
-
parameterName- имя параметра -
x- поток ввода java, содержащий двоичное значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.6
setCharacterStream
public void setCharacterStream(String parameterName,
Reader reader)
throws SQLException Устанавливает указанный параметр в заданный объект Reader. При вводе очень большого UNICODE значения в параметр LONGVARCHAR, может быть удобнее отправить его через объект java.io.Reader. Данные будут считываться из потока по мере необходимости до достижения конца файла. JDBC драйвер выполнит необходимые преобразования из UNICODE в формат символов базы данных.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setCharacterStream, принимающей параметр длины.
- Параметры:
-
parameterName- имя параметра -
reader- объектjava.io.Reader, содержащий данные Unicode - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван на закрытомCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.6
setNCharacterStream
public void setNCharacterStream(int parameterIndex,
Reader value)
throws SQLException Устанавливает указанный параметр в этом объекте RowSet команды в объект Reader. Reader считывает данные до достижения конца файла. Драйвер выполнит необходимое преобразование из формата символов Java в национальный набор символов базы данных.
Примечание: Этот объект потока может быть как стандартным объектом Java потока, так и вашим собственным подклассом, реализующим стандартный интерфейс.
Примечание: Обратитесь к документации JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setNCharacterStream, принимающей параметр длины.
- Параметры:
-
parameterIndex- для первого параметра 1, для второго 2 и т.д. -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных; или этот метод вызван на закрытомPreparedStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С:
- 1.6
setObject
public void setObject(String parameterName,
Object x,
int targetSqlType,
int scale)
throws SQLException Устанавливает значение указанного параметра с помощью данного объекта. Второй аргумент должен быть объектом типа; для целочисленных значений следует использовать эквивалентные объекты java.lang.
Указанный объект Java будет преобразован в указанный targetSqlType перед отправкой в базу данных. Если объект имеет пользовательское отображение (является классом, реализующим интерфейс SQLData), драйвер JDBC должен вызвать метод SQLData.writeSQL, чтобы записать его в поток данных SQL. Если же объект является классом, реализующим Ref, Blob, Clob, NClob, Struct, java.net.URL, или Array, драйвер должен передать его в базу данных как значение соответствующего типа SQL.
Обратите внимание, что этот метод может использоваться для передачи абстрактных типов данных, специфичных для базы данных.
- Параметры:
-
parameterName- имя параметра -
x- объект, содержащий значение входного параметра -
targetSqlType- тип SQL (как определено в java.sql.Types), который должен быть отправлен в базу данных. Аргумент scale может дополнительно квалифицировать этот тип. -
scale- для типов java.sql.Types.DECIMAL или java.sql.Types.NUMERIC это количество цифр после десятичной точки. Для всех остальных типов это значение будет проигнорировано. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- еслиtargetSqlTypeявляется типом данныхARRAY,BLOB,CLOB,DATALINK,JAVA_OBJECT,NCHAR,NCLOB,NVARCHAR,LONGNVARCHAR,REF,ROWID,SQLXMLилиSTRUCT, и драйвер JDBC не поддерживает этот тип данных - С:
- 1.4
- См. также:
-
Types,getParams()
setObject
public void setObject(String parameterName,
Object x,
int targetSqlType)
throws SQLException Устанавливает значение указанного параметра с помощью данного объекта. Этот метод похож на метод setObject выше, за исключением того, что он предполагает масштаб ноль.
- Параметры:
-
parameterName- имя параметра -
x- объект, содержащий значение входного параметра -
targetSqlType- тип SQL (как определено в java.sql.Types), который должен быть отправлен в базу данных - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- еслиtargetSqlTypeявляется типом данныхARRAY,BLOB,CLOB,DATALINK,JAVA_OBJECT,NCHAR,NCLOB,NVARCHAR,LONGNVARCHAR,REF,ROWID,SQLXMLилиSTRUCTи драйвер JDBC не поддерживает этот тип данных - С:
- 1.4
- См. также:
getParams()
setObject
public void setObject(String parameterName,
Object x)
throws SQLException Устанавливает значение указанного параметра с помощью данного объекта. Второй параметр должен быть типа Object; поэтому для встроенных типов следует использовать эквивалентные объекты java.lang.
Спецификация JDBC определяет стандартное отображение типов Java Object в типы SQL. Указанный аргумент будет преобразован в соответствующий тип SQL перед отправкой в базу данных.
Обратите внимание, что этот метод может использоваться для передачи абстрактных типов данных, специфичных для базы данных, с помощью типа Java, специфичного для драйвера. Если объект является классом, реализующим интерфейс SQLData, драйвер JDBC должен вызвать метод SQLData.writeSQL, чтобы записать его в поток данных SQL. Если же объект является классом, реализующим Ref, Blob, Clob, NClob, Struct, java.net.URL, или Array, драйвер должен передать его в базу данных как значение соответствующего типа SQL.
Этот метод выбрасывает исключение, если возникает неоднозначность, например, если объект является классом, реализующим более одного из перечисленных выше интерфейсов.
- Параметры:
-
parameterName- имя параметра -
x- объект, содержащий значение входного параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод был вызван для закрытогоCallableStatementили если заданныйObjectпараметр является неоднозначным -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setBlob
public void setBlob(int parameterIndex,
InputStream inputStream,
long length)
throws SQLException Устанавливает указанный параметр в объект типа InputStream. Входной поток должен содержать количество символов, указанное параметром length, в противном случае при выполнении PreparedStatement будет сгенерировано исключение SQLException. Этот метод отличается от метода setBinaryStream (int, InputStream, int), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как BLOB. Когда используется метод setBinaryStream, драйверу может потребоваться выполнить дополнительные действия для определения, должен ли параметр быть отправлен на сервер как LONGVARBINARY или BLOB.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
inputStream- объект, содержащий данные для установки значения параметра. -
length- количество байтов в данных параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод был вызван для закрытогоPreparedStatement, если parameterIndex не соответствует марке параметра в SQL-запросе, если указанная длина меньше нуля или количество байтов в входном потоке не соответствует указанной длине. -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setBlob
public void setBlob(int parameterIndex,
InputStream inputStream)
throws SQLException Устанавливает указанный параметр в объект типа InputStream. Этот метод отличается от метода setBinaryStream (int, InputStream), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как BLOB. Когда используется метод setBinaryStream, драйверу может потребоваться выполнить дополнительные действия для определения, должен ли параметр быть отправлен на сервер как LONGVARBINARY или BLOB.
Примечание: Обратитесь к документации вашего драйвера JDBC, чтобы определить, может ли использование версии setBlob, которая принимает параметр length, оказаться более эффективным.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
inputStream- объект, содержащий данные для установки значения параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод был вызван для закрытогоPreparedStatementили если parameterIndex не соответствует марке параметра в SQL-запросе, -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setBlob
public void setBlob(String parameterName,
InputStream inputStream,
long length)
throws SQLException Устанавливает указанный параметр в объект типа InputStream. Входной поток inputstream должен содержать количество символов, указанное параметром length, в противном случае при выполнении CallableStatement будет сгенерировано исключение SQLException. Этот метод отличается от метода setBinaryStream (int, InputStream, int), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как BLOB. Когда используется метод setBinaryStream, драйверу может потребоваться выполнить дополнительные действия для определения, должен ли параметр быть отправлен на сервер как LONGVARBINARY или BLOB.
- Параметры:
-
parameterName- имя параметра, устанавливаемого, второй - 2, и т.д. -
inputStream- объект, содержащий данные для установки значения параметра. -
length- количество байтов в данных параметра. - Исключения:
-
SQLException- если parameterIndex не соответствует марке параметра в SQL-запросе или если указанная длина меньше нуля; если количество байтов в входном потоке не соответствует указанной длине; если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setBlob
public void setBlob(String parameterName,
Blob x)
throws SQLException Устанавливает указанный параметр в объект java.sql.Blob. Драйвер преобразует это в значение SQL BLOB при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- объектBlob, отображающий значение SQLBLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setBlob
public void setBlob(String parameterName,
InputStream inputStream)
throws SQLException Устанавливает указанный параметр в объект типа InputStream. Этот метод отличается от метода setBinaryStream (int, InputStream), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как BLOB. Когда используется метод setBinaryStream, драйверу может потребоваться выполнить дополнительные действия для определения, должен ли параметр быть отправлен на сервер как LONGVARBINARY или BLOB.
Примечание: Обратитесь к документации вашего драйвера JDBC, чтобы определить, может ли использование версии setBlob, которая принимает параметр length, оказаться более эффективным.
- Параметры:
-
parameterName- имя параметра -
inputStream- Объект, содержащий данные для задания значения параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setClob
public void setClob(int parameterIndex,
Reader reader,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader. Чтец должен содержать количество символов, указанное параметром length, иначе при выполнении PreparedStatement будет сгенерирована ошибка SQLException. Этот метод отличается от метода setCharacterStream (int, Reader, int), потому что он сообщает драйверу, что значение параметра должно быть отправлено на сервер как CLOB. При использовании метода setCharacterStream, драйверу может потребоваться выполнить дополнительные действия для определения, следует ли отправлять данные параметра на сервер как LONGVARCHAR или как CLOB
- Параметры:
-
parameterIndex- индекс первого параметра равен 1, второго - 2 и т.д. -
reader- Объект, содержащий данные для задания значения параметра. -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод был вызван для закрытогоPreparedStatement, если parameterIndex не соответствует марке параметра в SQL-запросе или указанная длина меньше нуля. -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setClob
public void setClob(int parameterIndex,
Reader reader)
throws SQLException Устанавливает указанный параметр в объект Reader. Этот метод отличается от метода setCharacterStream (int, Reader), потому что он сообщает драйверу, что значение параметра должно быть отправлено на сервер как CLOB. При использовании метода setCharacterStream, драйверу может потребоваться выполнить дополнительные действия для определения, следует ли отправлять данные параметра на сервер как LONGVARCHAR или как CLOB
Примечание: Обратитесь к документации вашего драйвера JDBC, чтобы определить, может ли быть более эффективным использование версии setClob, которая принимает параметр длины.
- Параметры:
-
parameterIndex- индекс первого параметра равен 1, второго - 2 и т.д. -
reader- Объект, содержащий данные для задания значения параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод был вызван для закрытогоPreparedStatementили если parameterIndex не соответствует марке параметра в SQL-запросе -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setClob
public void setClob(String parameterName,
Reader reader,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader. reader должен содержать количество символов, указанное параметром length, иначе при выполнении CallableStatement будет сгенерирована ошибка SQLException. Этот метод отличается от метода setCharacterStream (int, Reader, int), потому что он сообщает драйверу, что значение параметра должно быть отправлено на сервер как CLOB. При использовании метода setCharacterStream, драйверу может потребоваться выполнить дополнительные действия для определения, следует ли отправлять данные параметра на сервер как LONGVARCHAR или как CLOB
- Параметры:
-
parameterName- имя параметра, который нужно установить -
reader- Объект, содержащий данные для задания значения параметра. -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если parameterIndex не соответствует марке параметра в SQL-запросе; если указанная длина меньше нуля; произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setClob
public void setClob(String parameterName,
Clob x)
throws SQLException Устанавливает указанный параметр в заданный объект java.sql.Clob. Драйвер преобразует его в значение SQL CLOB при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- объектClob, который отображает значение SQLCLOB - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setClob
public void setClob(String parameterName,
Reader reader)
throws SQLException Устанавливает указанный параметр в объект Reader. Этот метод отличается от метода setCharacterStream (int, Reader), потому что он сообщает драйверу, что значение параметра должно быть отправлено на сервер как CLOB. При использовании метода setCharacterStream, драйверу может потребоваться выполнить дополнительные действия для определения, следует ли отправлять данные параметра на сервер как LONGVARCHAR или как CLOB
Примечание: Обратитесь к документации вашего драйвера JDBC, чтобы определить, может ли быть более эффективным использование версии setClob, которая принимает параметр длины.
- Параметры:
-
parameterName- имя параметра -
reader- Объект, содержащий данные для задания значения параметра. - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setDate
public void setDate(String parameterName,
Date x)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Date с использованием часового пояса по умолчанию виртуальной машины, на которой выполняется приложение. Драйвер преобразует это в значение SQL DATE при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setDate
public void setDate(String parameterName,
Date x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Date с использованием объекта Calendar. Драйвер использует объект Calendar для построения значения SQL DATE, которое затем отправляется в базу данных. С объектом Calendar, драйвер может рассчитать дату с учетом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс по умолчанию, который соответствует виртуальной машине, выполняющей приложение.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра -
cal- объектCalendar, который драйвер будет использовать для построения даты - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setTime
public void setTime(String parameterName,
Time x)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Time. Драйвер преобразует его в значение SQL TIME при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setTime
public void setTime(String parameterName,
Time x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Time с использованием объекта Calendar. Драйвер использует объект Calendar для построения значения SQL TIME, которое затем отправляется в базу данных. С объектом Calendar, драйвер может рассчитать время с учетом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс по умолчанию, который соответствует виртуальной машине, выполняющей приложение.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра -
cal- объектCalendar, который драйвер будет использовать для построения времени - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
- См. также:
getParams()
setTimestamp
public void setTimestamp(String parameterName,
Timestamp x,
Calendar cal)
throws SQLException Устанавливает указанный параметр в заданное значение java.sql.Timestamp с использованием объекта Calendar. Драйвер использует объект Calendar для построения значения SQL TIMESTAMP, которое затем отправляется в базу данных. С объектом Calendar, драйвер может рассчитать метку времени с учетом пользовательского часового пояса. Если объект Calendar не указан, драйвер использует часовой пояс по умолчанию, который соответствует виртуальной машине, выполняющей приложение.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра -
cal- объектCalendar, который драйвер использует для построения отметки времени - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.4
- См. также:
getParams()
setSQLXML
public void setSQLXML(int parameterIndex,
SQLXML xmlObject)
throws SQLException Устанавливает указанный параметр в указанный объект java.sql.SQLXML. Драйвер преобразует его в значение SQL XML при отправке в базу данных.
- Параметры:
-
parameterIndex- индекс первого параметра - 1, второго - 2 и т. д. -
xmlObject- объектSQLXML, который отображает значение SQLXML - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод вызван для закрытого набора результатов,java.xml.transform.Result,WriterилиOutputStreamне был закрыт для объектаSQLXMLили если произошла ошибка обработки значения XML. МетодgetCauseисключения может предоставить более подробное исключение, например, если поток не содержит валидного XML. -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setSQLXML
public void setSQLXML(String parameterName,
SQLXML xmlObject)
throws SQLException Устанавливает указанный параметр в указанный объект java.sql.SQLXML. Драйвер преобразует его в значение SQL XML при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
xmlObject- объектSQLXML, который отображает значениеSQL XML - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных, этот метод вызван для закрытого набора результатов,java.xml.transform.Result,WriterилиOutputStreamне был закрыт для объектаSQLXMLили если произошла ошибка обработки значения XML. МетодgetCauseисключения может предоставить более подробное исключение, например, если поток не содержит валидного XML. -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setRowId
public void setRowId(int parameterIndex,
RowId x)
throws SQLException Устанавливает указанный параметр в указанный объект java.sql.RowId. Драйвер преобразует его в значение SQL ROWID при отправке в базу данных
- Параметры:
-
parameterIndex- первый параметр - 1, второй - 2 и т.д. -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setRowId
public void setRowId(String parameterName,
RowId x)
throws SQLException Устанавливает указанный параметр в указанный объект java.sql.RowId. Драйвер преобразует его в SQL ROWID при отправке в базу данных.
- Параметры:
-
parameterName- имя параметра -
x- значение параметра - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNString
public void setNString(int parameterIndex,
String value)
throws SQLException Устанавливает указанный параметр в указанный объект String. Драйвер преобразует его в значение SQL NCHAR или NVARCHAR или LONGNVARCHAR (в зависимости от размера аргумента относительно ограничений драйвера на NVARCHAR значения) при отправке в базу данных.
- Параметры:
-
parameterIndex- индекс первого параметра - 1, второго - 2 и т. д. -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNString
public void setNString(String parameterName,
String value)
throws SQLException Устанавливает указанный параметр в указанный объект String. Драйвер преобразует его в значение SQL NCHAR или NVARCHAR или LONGNVARCHAR
- Параметры:
-
parameterName- имя столбца, который нужно установить -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNCharacterStream
public void setNCharacterStream(int parameterIndex,
Reader value,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader. Reader считывает данные до достижения конца файла. Драйвер выполняет необходимое преобразование из формата Java символов в национальный набор символов базы данных.
- Параметры:
-
parameterIndex- индекс первого параметра - 1, второго - 2 и т. д. -
value- значение параметра -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNCharacterStream
public void setNCharacterStream(String parameterName,
Reader value,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader. Reader считывает данные до достижения конца файла. Драйвер выполняет необходимое преобразование из формата Java символов в национальный набор символов базы данных.
- Параметры:
-
parameterName- имя столбца, который нужно установить -
value- значение параметра -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNCharacterStream
public void setNCharacterStream(String parameterName,
Reader value)
throws SQLException Устанавливает указанный параметр в объект Reader. Reader считывает данные до достижения конца файла. Драйвер выполняет необходимое преобразование из формата Java символов в национальный набор символов базы данных.
Примечание: Этот объект потока может быть стандартным объектом Java потока или собственным подклассом, который реализует стандартный интерфейс.
Примечание: Обратитесь к документации JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setNCharacterStream, которая принимает параметр длины.
- Параметры:
-
parameterName- имя параметра -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных; или если этот метод вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNClob
public void setNClob(String parameterName,
NClob value)
throws SQLException Устанавливает указанный параметр в объект java.sql.NClob. Объект реализует интерфейс java.sql.NClob. Этот объект NClob отображает SQL NCLOB.
- Параметры:
-
parameterName- имя столбца, который нужно установить -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNClob
public void setNClob(String parameterName,
Reader reader,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader. reader должен содержать количество символов, указанное в length, в противном случае при выполнении CallableStatement будет сгенерировано SQLException. Этот метод отличается от метода setCharacterStream (int, Reader, int), потому что он информирует драйвер о том, что значение параметра должно быть отправлено на сервер как NCLOB. При использовании метода setCharacterStream, драйверу может потребоваться выполнить дополнительные действия, чтобы определить, следует ли отправлять данные параметра на сервер как LONGNVARCHAR или NCLOB
- Параметры:
-
parameterName- имя параметра, который нужно установить -
reader- объект, содержащий данные для установки значения параметра. -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если parameterIndex не соответствует марке параметра в SQL-запросе; если указанная длина меньше нуля; если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных или этот метод был вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если JDBC драйвер не поддерживает этот метод - С тех пор:
- 1.6
setNClob
public void setNClob(String parameterName,
Reader reader)
throws SQLException Устанавливает указанный параметр в объект Reader. Этот метод отличается от метода setCharacterStream (int, Reader), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер в качестве NCLOB. Когда используется метод setCharacterStream, драйверу может потребоваться выполнить дополнительную работу, чтобы определить, должно ли данные параметра быть отправлены на сервер как LONGNVARCHAR или как NCLOB.
Примечание: Обратитесь к документации вашего драйвера JDBC, чтобы определить, может ли быть более эффективным использование версии setNClob, которая принимает параметр длины.
- Параметры:
-
parameterName- имя параметра -
reader- Объект, содержащий данные для установки значения параметра. - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных или этот метод вызван для закрытогоCallableStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setNClob
public void setNClob(int parameterIndex,
Reader reader,
long length)
throws SQLException Устанавливает указанный параметр в объект Reader . Чтение должно содержать количество символов, указанное длиной, в противном случае, при выполнении PreparedStatement, будет сгенерирована ошибка SQLException. Этот метод отличается от метода setCharacterStream (int, Reader, int), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как NCLOB. Когда используется метод setCharacterStream, драйверу может потребоваться выполнить дополнительную работу, чтобы определить, должны ли данные параметра быть отправлены на сервер как LONGNVARCHAR или как NCLOB.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
reader- Объект, содержащий данные для установки значения параметра. -
length- количество символов в данных параметра. - Исключения:
-
SQLException- если parameterIndex не соответствует марке параметра в SQL-запросе; если указанная длина меньше нуля; если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных или этот метод вызван для закрытогоPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setNClob
public void setNClob(int parameterIndex,
NClob value)
throws SQLException Устанавливает указанный параметр в объект java.sql.NClob. Драйвер преобразует это в значение SQL NCLOB при отправке в базу данных.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
value- значение параметра - Исключения:
-
SQLException- если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; или если произошла ошибка доступа к базе данных -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setNClob
public void setNClob(int parameterIndex,
Reader reader)
throws SQLException Устанавливает указанный параметр в объект Reader. Этот метод отличается от метода setCharacterStream (int, Reader), так как он сообщает драйверу, что значение параметра должно быть отправлено на сервер как NCLOB. Когда используется метод setCharacterStream, драйверу может потребоваться выполнить дополнительную работу, чтобы определить, должны ли данные параметра быть отправлены на сервер как LONGNVARCHAR или как NCLOB.
Примечание: Обратитесь к документации вашего JDBC драйвера, чтобы определить, может ли быть более эффективным использование версии setNClob, которая принимает параметр длины.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
reader- Объект, содержащий данные для установки значения параметра. - Исключения:
-
SQLException- если parameterIndex не соответствует марке параметра в SQL-запросе; если драйвер не поддерживает национальные наборы символов; если драйвер может определить, что может произойти ошибка преобразования данных; если произошла ошибка доступа к базе данных или этот метод вызван для закрытогоPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.6
setURL
public void setURL(int parameterIndex,
URL x)
throws SQLException Устанавливает указанный параметр в заданное значение java.net.URL. Драйвер преобразует это в значение SQL DATALINK при отправке в базу данных.
- Параметры:
-
parameterIndex- индекс первого параметра 1, второго 2 и т.д. -
x- объектjava.net.URLдля установки - Исключения:
-
SQLException- если произошла ошибка доступа к базе данных или этот метод вызван для закрытогоPreparedStatement -
SQLFeatureNotSupportedException- если драйвер JDBC не поддерживает этот метод - С:
- 1.4
© 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.