Spec-Zone.ru › OpenJDK 17

Интерфейс JdbcRowSet

Все суперинтерфейсы:
AutoCloseable, Joinable, ResultSet, RowSet, Wrapper
public interface JdbcRowSet extends RowSet, Joinable
Стандартный интерфейс, который должны реализовывать все стандартные реализации JdbcRowSet.

1.0 Обзор

Обёртка вокруг объекта ResultSet, которая позволяет использовать результат запроса как компонент JavaBeans. Таким образом, объект JdbcRowSet может быть одним из компонентов, предоставляемых инструментом для создания приложения. Поскольку объект JdbcRowSet является подключённым набором строк, то есть постоянно поддерживает соединение с базой данных с помощью драйвера, поддерживающего JDBC, он также эффективно превращает драйвер в компонент JavaBeans.

Поскольку он всегда подключён к базе данных, экземпляр JdbcRowSet может просто принимать вызовы, обращённые к нему, и в свою очередь вызывать их на своём объекте ResultSet. Вследствие этого, например, набор результатов может быть компонентом приложения Swing.

Ещё одним преимуществом объекта JdbcRowSet является то, что он может быть использован для преобразования объекта ResultSet в прокручиваемый и обновляемый. Все объекты RowSet по умолчанию являются прокручиваемыми и обновляемыми. Если используемый драйвер и база данных не поддерживают прокрутку и/или обновление наборов результатов, приложение может заполнить объект JdbcRowSet данными объекта ResultSet и затем работать с объектом JdbcRowSet как если бы это был объект ResultSet.

2.0 Создание объекта JdbcRowSet

Реализация интерфейса JdbcRowSet, JdbcRowSetImpl, предоставляет реализацию конструктора по умолчанию. Новый экземпляр инициализируется значениями по умолчанию, которые могут быть изменены по мере необходимости. Новый экземпляр не является функциональным до тех пор, пока не будет вызван метод execute. В общем случае этот метод выполняет следующее:
  • устанавливает подключение к базе данных
  • создаёт объект PreparedStatement и устанавливает любые параметры заполнителей
  • выполняет оператор для создания объекта ResultSet
Если метод execute выполнился успешно, он установит соответствующие приватные поля JdbcRowSet со следующим:
  • объект Connection — подключение между набором строк и базой данных
  • объект PreparedStatement — запрос, который генерирует набор результатов
  • объект ResultSet — набор результатов, созданный командой набора строк и который фактически превращается в компонент JavaBeans
Если эти поля не установлены, то есть метод execute не выполнился успешно, к набору строк нельзя обращаться ни с какими методами, кроме execute и close. Все остальные публичные методы будут генерировать исключение.

Однако перед вызовом метода execute необходимо установить команду и свойства, необходимые для установления подключения. Следующий фрагмент кода создаёт объект JdbcRowSetImpl, устанавливает свойства команды и подключения, устанавливает параметр заполнителя, а затем вызывает метод execute.

     JdbcRowSetImpl jrs = new JdbcRowSetImpl();
     jrs.setCommand("SELECT * FROM TITLES WHERE TYPE = ?");
     jrs.setURL("jdbc:myDriver:myAttribute");
     jrs.setUsername("cervantes");
     jrs.setPassword("sancho");
     jrs.setString(1, "BIOGRAPHY");
     jrs.execute();
 
Переменная jrs теперь представляет собой экземпляр JdbcRowSetImpl, который является тонкой обёрткой вокруг объекта ResultSet, содержащего все строки таблицы TITLES, где тип книги — биография. На этом этапе операции, вызываемые на jrs, будут влиять на строки в наборе результатов, который фактически является компонентом JavaBeans.

Реализация метода RowSet execute в реализации по умолчанию отличается от реализации в реализации CachedRowSet по умолчанию для учёта различных требований к подключённым и неподключённым объектам RowSet.

С:
1.5

Краткое описание полей

Поля, объявленные в интерфейсе java.sql.ResultSet

CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE

Краткое описание методов

Модификатор и тип Метод Описание
void commit()
Каждый JdbcRowSet содержит объект Connection из ResultSet или свойств JDBC, переданных в конструкторы.
boolean getAutoCommit()
Каждый JdbcRowSet содержит объект Connection из исходного ResultSet или свойств JDBC, переданных в конструктор.
RowSetWarning getRowSetWarnings()
Возвращает первое предупреждение, сгенерированное вызовами этого объекта JdbcRowSet.
boolean getShowDeleted()
Возвращает boolean, указывающий, присутствуют ли в наборе текущих строк строки, отмеченные для удаления.
void rollback()
Каждый JdbcRowSet содержит объект Connection из исходного ResultSet или свойств JDBC, переданных в конструктор.
void rollback(Savepoint s)
Каждый JdbcRowSet содержит объект Connection из исходного ResultSet или свойств JDBC, переданных в конструктор.
void setAutoCommit(boolean autoCommit)
Каждый JdbcRowSet содержит объект Connection из исходного ResultSet или свойств JDBC, переданных в конструктор.
void setShowDeleted(boolean b)
Устанавливает свойство showDeleted в указанное значение boolean.

Методы, объявленные в интерфейсе javax.sql.rowset.Joinable

getMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn

Методы, объявленные в интерфейсе java.sql.ResultSet

absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull

Методы, объявленные в интерфейсе javax.sql.RowSet

addRowSetListener, clearParameters, execute, getCommand, getDataSourceName, getEscapeProcessing, getMaxFieldSize, getMaxRows, getPassword, getQueryTimeout, getTransactionIsolation, getTypeMap, getUrl, getUsername, isReadOnly, removeRowSetListener, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBlob, setBlob, setBlob, setBoolean, setBoolean, setByte, setByte, setBytes, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setClob, setClob, setClob, setCommand, setConcurrency, setDataSourceName, setDate, setDate, setDate, setDate, setDouble, setDouble, setEscapeProcessing, setFloat, setFloat, setInt, setInt, setLong, setLong, setMaxFieldSize, setMaxRows, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNClob, setNClob, setNClob, setNString, setNString, setNull, setNull, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setObject, setPassword, setQueryTimeout, setReadOnly, setRef, setRowId, setRowId, setShort, setShort, setSQLXML, setSQLXML, setString, setString, setTime, setTime, setTime, setTime, setTimestamp, setTimestamp, setTimestamp, setTimestamp, setTransactionIsolation, setType, setTypeMap, setUrl, setURL, setUsername

Методы, объявленные в интерфейсе java.sql.Wrapper

isWrapperFor, unwrap

Подробное описание методов

getShowDeleted

boolean getShowDeleted() throws SQLException
Возвращает значение, boolean , указывающее, отображаются ли строки, помеченные на удаление, в наборе текущих строк. Если возвращается true, строки, помеченные на удаление, видны вместе с текущими строками. Если возвращается false, строки не отображаются в наборе текущих строк. Значение по умолчанию — false.

Реализации стандартных наборов строк могут ограничить это поведение по соображениям безопасности или в определённых сценариях развертывания. Видимость строк, помеченных на удаление, определяется реализацией и не является стандартным поведением.

Примечание: Разрешение отображения строк, помеченных на удаление, усложняет поведение некоторых стандартных методов реализаций JDBC RowSet. Однако большинство пользователей наборов строк могут просто игнорировать этот дополнительный нюанс, поскольку только очень специализированные приложения, вероятно, захотят воспользоваться этой функцией.

Возвращает:
true если строки, помеченные на удаление, видны; false в противном случае
Издает:
SQLException — если реализация набора строк не может определить, остаются ли строки, помеченные на удаление, видимыми
См. также:
  • setShowDeleted(boolean)

setShowDeleted

void setShowDeleted(boolean b) throws SQLException
Устанавливает свойство showDeleted в заданное значение boolean. Это свойство определяет, будут ли строки, помеченные на удаление, продолжать отображаться в наборе текущих строк. Если значение установлено в true, строки, помеченные на удаление, немедленно отображаются вместе с текущими строками. Если значение установлено в false, строки, помеченные на удаление, не отображаются в текущем наборе строк.

Стандартные реализации наборов строк могут ограничить это поведение по соображениям безопасности или в определенных сценариях развертывания. Это остается определенным реализацией и не является стандартным поведением.

Параметры:
b - true если строки, помеченные на удаление, должны быть показаны; false в противном случае
Издает:
SQLException — если реализация набора строк не может сбросить, должны ли быть видны строки, помеченные на удаление
См. также:
  • getShowDeleted()

getRowSetWarnings

RowSetWarning getRowSetWarnings() throws SQLException
Возвращает первое предупреждение, полученное в результате вызовов данного объекта JdbcRowSet. Если было получено второе предупреждение для этого объекта JdbcRowSet, оно будет прикреплено к первому предупреждению и может быть получено путем вызова метода RowSetWarning.getNextWarning на первом предупреждении. Последующие предупреждения для этого объекта JdbcRowSet будут прикреплены к объектам RowSetWarning , возвращаемым методом RowSetWarning.getNextWarning. Цепочка предупреждений автоматически очищается каждый раз при чтении новой строки. Этот метод не может быть вызван для объекта RowSet, который был закрыт; при этом будет сгенерировано SQLException.

Так как объект JdbcRowSet всегда связан с источником данных, он может полагаться на наличие активных экземпляров Statement, Connection и ResultSet. Это означает, что приложения могут получить дополнительные уведомления SQLWarning путем вызова предоставляемых ими методов getNextWarning. Отключенные объекты Rowset, такие как объект CachedRowSet, не имеют доступа к этим методам getNextWarning.

Возвращает:
первый объект RowSetWarning , полученный в результате работы с объектом JdbcRowSet , или null , если таковых нет
Издает:
SQLException — если этот метод вызывается для закрытого объекта JdbcRowSet
См. также:
  • RowSetWarning

commit

void commit() throws SQLException
Каждый объект JdbcRowSet содержит объект Connection из свойств ResultSet или JDBC, переданных в его конструкторы. Этот метод оборачивает метод Connection commit, чтобы обеспечить гибкую поддержку автоматического подтверждения или неавтоматического подтверждения транзакций.

Делает все изменения, внесенные с момента последнего подтверждения/отмены, постоянными и освобождает любые блокировки базы данных, удерживаемые этим объектом Connection. Этот метод следует использовать только в том случае, если режим автоматического подтверждения отключен.

Издает:
SQLException — если произошла ошибка доступа к базе данных или этот объект Connection в рамках данного объекта JdbcRowSet находится в режиме автоматического подтверждения
См. также:
  • Connection.setAutoCommit(boolean)

getAutoCommit

boolean getAutoCommit() throws SQLException
Каждый объект JdbcRowSet содержит объект Connection из исходных свойств ResultSet или JDBC, переданных в него. Этот метод оборачивает метод Connection's getAutoCommit для определения поведения транзакции JdbcRowSet приложения.

Устанавливает режим автоматического подтверждения соединения в заданное состояние. Если соединение находится в режиме автоматического подтверждения, все его SQL-запросы будут выполняться и подтверждаться как отдельные транзакции. В противном случае SQL-запросы группируются в транзакции, которые завершаются вызовом метода commit или rollback. По умолчанию новые соединения находятся в режиме автоматического подтверждения.

Возвращает:
true если автоматическое подтверждение включено; false в противном случае
Издает:
SQLException — если произошла ошибка доступа к базе данных
См. также:
  • Connection.getAutoCommit()

setAutoCommit

void setAutoCommit(boolean autoCommit) throws SQLException
Каждый объект JdbcRowSet содержит объект Connection из исходных свойств ResultSet или JDBC, переданных в него. Этот метод оборачивает метод Connection's getAutoCommit для установки поведения транзакции JdbcRowSet приложения.

Устанавливает текущий режим автоматического подтверждения для объекта Connection.

Параметры:
autoCommit - true для включения автоматического подтверждения; false для отключения автоматического подтверждения
Издает:
SQLException — если произошла ошибка доступа к базе данных
См. также:
  • Connection.setAutoCommit(boolean)

rollback

void rollback() throws SQLException
Каждый объект JdbcRowSet содержит объект Connection из исходных свойств ResultSet или JDBC, переданных в него. Отменяет все изменения, внесенные в текущей транзакции, и освобождает любые блокировки базы данных, удерживаемые этим объектом Connection . Этот метод следует использовать только в том случае, если режим автоматического подтверждения отключен.
Издает:
SQLException — если произошла ошибка доступа к базе данных или этот объект Connection в рамках этого объекта Connection находится в режиме автоматического подтверждения.
См. также:
  • rollback(Savepoint)

rollback

void rollback(Savepoint s) throws SQLException
Каждый объект JdbcRowSet содержит объект Connection из исходных свойств ResultSet или JDBC, переданных в него. Отменяет все изменения, внесенные в текущей транзакции до последнего заданного сохранения и освобождает любые блокировки базы данных, удерживаемые этим объектом Connection . Этот метод следует использовать только в том случае, если режим автоматического подтверждения отключен.
Параметры:
s - Сохранение, до которого необходимо отменить транзакцию
Издает:
SQLException — если произошла ошибка доступа к базе данных или этот объект Connection в рамках этого объекта Connection находится в режиме автоматического подтверждения.
См. также:
  • rollback()

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.sql.rowset/javax/sql/rowset/JdbcRowSet.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API