Интерфейс JoinRowSet
- Все суперинтерфейсы:
AutoCloseable, CachedRowSet, Joinable, ResultSet, RowSet, WebRowSet, Wrapper
public interface JoinRowSet extends WebRowSet
JoinRowSet предоставляет механизм объединения связанных данных из разных объектов RowSet в один объект JoinRowSet, представляющий SQL-JOIN. Другими словами, объект JoinRowSet служит контейнером для данных из объектов RowSet, образующих отношение SQL-JOIN. Интерфейс Joinable предоставляет методы для установки, получения и сброса столбца сопоставления, который служит основой для установления отношения SQL-JOIN. Столбец сопоставления также можно задать, передав его соответствующей версии метода JointRowSet addRowSet.
1.0 Обзор
Отключенные объектыRowSet (объекты CachedRowSet и реализации, расширяющие интерфейс CachedRowSet) не имеют стандартного способа установления SQL-JOIN между объектами RowSet без дорогостоящей операции повторного подключения к источнику данных. Интерфейс JoinRowSet специально разработан для удовлетворения этой потребности. Любой объект RowSet можно добавить в объект JoinRowSet, чтобы он стал частью отношения SQL-JOIN. Это означает, что в JOIN могут входить как подключенные, так и отключенные объекты RowSet. Объектам RowSet, работающим в подключенной среде (объектам JdbcRowSet), рекомендуется использовать уже имеющееся подключение к базе данных для непосредственного установления отношений SQL-JOIN между таблицами. Однако при необходимости объект JdbcRowSet можно добавить в объект JoinRowSet.
К экземпляру JoinRowSet можно добавить любое количество объектов RowSet, если их можно связать отношением SQL-JOIN. По определению, оператор SQL-JOIN используется для объединения данных из двух или более таблиц реляционной базы данных на основе общего атрибута. Интерфейс Joinable предоставляет методы для задания общего атрибута, для чего устанавливается столбец сопоставления. Столбец сопоставления обычно совпадает с первичным ключом, однако он не обязан совпадать с ним. Устанавливая и затем обеспечивая соответствие столбцов, объект JoinRowSet устанавливает отношения JOIN между объектами RowSet без помощи доступной реляционной базы данных.
Тип создаваемого JOIN определяется установкой одной из констант JoinRowSet с помощью метода setJoinType. Можно задать следующие типы SQL-JOIN:
-
CROSS_JOIN -
FULL_JOIN -
INNER_JOIN— используется по умолчанию, если типJOINне задан -
LEFT_OUTER_JOIN -
RIGHT_OUTER_JOIN
JOIN автоматически будет внутренним соединением. Комментарии к полям интерфейса JoinRowSet поясняют эти типы JOIN, являющиеся стандартными типами SQL-JOIN. 2.0 Использование объекта JoinRowSet для создания JOIN
При создании объекта JoinRowSet он пуст. Первый добавленный объект RowSet становится основой отношения JOIN. Приложения должны определить, какой столбец в каждом из добавляемых в объект JoinRowSet объектов RowSet следует использовать в качестве столбца сопоставления. Все объекты RowSet должны содержать столбец сопоставления, а значения в каждом столбце сопоставления должны допускать сравнение со значениями в других столбцах сопоставления. Столбцы не обязаны иметь одинаковые имена, хотя часто это так, и в них не обязательно должны храниться данные одного и того же типа, если эти типы данных допускают сравнение. Столбец сопоставления можно задать двумя способами:
- Вызвав метод
JoinablesetMatchColumn
Это единственный метод, с помощью которого можно задать столбец сопоставления до добавления объектаRowSetв объектJoinRowSet. Чтобы использовать методsetMatchColumn, объектRowSetдолжен реализовывать интерфейсJoinable. После установки значения столбца сопоставления этот метод можно использовать для его сброса в любое время. - Вызвав одну из версий метода
JoinRowSetaddRowSet, принимающую имя или номер столбца (либо массив имен или номеров столбцов)
Четыре из пяти методовaddRowSetпринимают столбец сопоставления в качестве параметра. Эти четыре метода устанавливают или сбрасывают столбец сопоставления при добавлении объектаRowSetв объектJoinRowSet.
3.0 Пример использования
Следующий фрагмент кода добавляет два объекта CachedRowSet в объект JoinRowSet. Обратите внимание: в этом примере тип SQL-JOIN не задан, поэтому используется тип JOIN по умолчанию — INNER_JOIN.
В следующем фрагменте кода таблица EMPLOYEES, для которой столбцом сопоставления задан первый столбец (EMP_ID), добавляется в объект JoinRowSet jrs. Затем добавляется таблица ESSP_BONUS_PLAN, для которой столбцом сопоставления также является столбец EMP_ID. При добавлении второй таблицы в jrs включаются только те строки из ESSP_BONUS_PLAN, в которых значение EMP_ID совпадает со значением EMP_ID в таблице EMPLOYEES. В данном случае все участники бонусной программы являются сотрудниками, поэтому в объект JoinRowSet добавляются все строки таблицы ESSP_BONUS_PLAN. В этом примере оба добавляемых объекта CachedRowSet реализуют интерфейс Joinable и поэтому могут вызвать метод Joinable setMatchColumn.
JoinRowSet jrs = new JoinRowSetImpl();
ResultSet rs1 = stmt.executeQuery("SELECT * FROM EMPLOYEES");
CachedRowSet empl = new CachedRowSetImpl();
empl.populate(rs1);
empl.setMatchColumn(1);
jrs.addRowSet(empl);
ResultSet rs2 = stmt.executeQuery("SELECT * FROM ESSP_BONUS_PLAN");
CachedRowSet bonus = new CachedRowSetImpl();
bonus.populate(rs2);
bonus.setMatchColumn(1); // EMP_ID is the first column
jrs.addRowSet(bonus);
На этом этапе jrs представляет собой внутреннее соединение двух объектов RowSet по их столбцам EMP_ID. Теперь приложение может просматривать объединенные данные так, как если бы оно просматривало один объект RowSet. Поскольку jrs сам является объектом RowSet, приложение может перемещаться по нему или изменять его с помощью методов RowSet.
jrs.first();
int employeeID = jrs.getInt(1);
String employeeName = jrs.getString(2);
Обратите внимание: поскольку при добавлении второго или последующего объекта RowSet приложением необходимо обеспечить выполнение SQL-JOIN, во время выполнения JOIN возможно первоначальное снижение производительности.
Следующий фрагмент кода добавляет еще один объект CachedRowSet. В этом случае столбец сопоставления (EMP_ID) задается при добавлении объекта CachedRowSet в объект JoinRowSet.
ResultSet rs3 = stmt.executeQuery("SELECT * FROM 401K_CONTRIB");
CachedRowSet fourO1k = new CachedRowSetImpl();
four01k.populate(rs3);
jrs.addRowSet(four01k, 1);
Объект JoinRowSet jrs теперь содержит значения из всех трех таблиц. В jrs добавлены данные из каждой строки таблицы four01k, в которой значение столбца EMP_ID совпадает со значением столбца EMP_ID в jrs.
4.0 Методы JoinRowSet
Интерфейс JoinRowSet предоставляет несколько методов для добавления объектов RowSet и получения сведений об объекте JoinRowSet. - Методы для добавления одного или нескольких объектов
RowSet
Эти методы позволяют приложению добавлять по одному объектуRowSetили несколько объектовRowSetодновременно. В обоих случаях методы могут задавать столбец сопоставления для каждого добавляемого объектаRowSet. - Методы для получения сведений
Один метод получает объектыRowSetиз объектаJoinRowSet, а другой — именаRowSet. Третий метод получает либо предложение SQL-WHERE, используемое для формированияJOIN, либо текстовое описание его назначения — того, что делает предложениеWHERE. - Методы, связанные с типом
JOIN
Один метод задает типJOIN, а пять методов позволяют определить, поддерживает ли объектJoinRowSetуказанный тип. - Метод для создания отдельной копии объекта
JoinRowSet
Этот метод создает копию, которую можно сохранить в источнике данных.
- Начиная с версии:
- 1.5
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
CROSS_JOIN |
Соединение в стиле ANSI- JOIN, возвращающее декартово произведение двух таблиц |
static final int |
FULL_JOIN |
Соединение в стиле ANSI- JOIN, выполняющее полное соединение. |
static final int |
INNER_JOIN |
Соединение в стиле ANSI- JOIN, выполняющее внутреннее соединение двух таблиц. |
static final int |
LEFT_OUTER_JOIN |
Соединение в стиле ANSI- JOIN, выполняющее левое внешнее соединение двух таблиц. |
static final int |
RIGHT_OUTER_JOIN |
Соединение в стиле ANSI- JOIN, выполняющее правое внешнее соединение двух таблиц. |
Поля, объявленные в интерфейсе CachedRowSet
COMMIT_ON_ACCEPT_CHANGES
Поля, объявленные в интерфейсе 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
Поля, объявленные в интерфейсе WebRowSet
PUBLIC_XML_SCHEMA, SCHEMA_SYSTEM_ID
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addRowSet |
Добавляет один или несколько объектов RowSet из заданного массива объектов RowSet в этот объект JoinRowSet и задает для каждого объекта RowSet столбец сопоставления, указанный в заданном массиве индексов столбцов. |
void |
addRowSet |
Добавляет один или несколько объектов RowSet из заданного массива объектов RowSet в этот объект JoinRowSet и задает для каждого объекта RowSet столбец сопоставления, указанный в заданном массиве имен столбцов. |
void |
addRowSet |
Добавляет заданный объект RowSet в этот объект JoinRowSet. |
void |
addRowSet |
Добавляет заданный объект RowSet в этот объект JoinRowSet и задает указанный столбец в качестве столбца сопоставления для объекта RowSet. |
void |
addRowSet |
Добавляет rowset в этот объект JoinRowSet и задает указанный столбец в качестве столбца сопоставления. |
int |
getJoinType() |
Возвращает объект int с описанием заданного типа SQL-JOIN, управляющего этим экземпляром JoinRowSet. |
String[] |
getRowSetNames() |
Возвращает массив String, содержащий имена объектов RowSet, добавленных в этот объект JoinRowSet. |
Collection |
getRowSets() |
Возвращает объект Collection, содержащий объекты RowSet, добавленные в этот объект JoinRowSet. |
String |
getWhereClause() |
Возвращает описание предложения WHERE в объекте JoinRowSet в формате, похожем на SQL. |
void |
setJoinType |
Позволяет приложению настроить тип JOIN, применяемый к таблицам, содержащимся в экземпляре объекта JoinRowSet. |
boolean |
supportsCrossJoin() |
Указывает, поддерживается ли CROSS_JOIN реализацией JoinRowSet |
boolean |
supportsFullJoin() |
Указывает, поддерживается ли FULL_JOIN реализацией JoinRowSet |
boolean |
supportsInnerJoin() |
Указывает, поддерживается ли INNER_JOIN реализацией JoinRowSet |
boolean |
supportsLeftOuterJoin() |
Указывает, поддерживается ли LEFT_OUTER_JOIN реализацией JoinRowSet |
boolean |
supportsRightOuterJoin() |
Указывает, поддерживается ли RIGHT_OUTER_JOIN реализацией JoinRowSet |
CachedRowSet |
toCachedRowSet() |
Создает новый объект CachedRowSet, содержащий данные из этого объекта JoinRowSet, который можно сохранить в источнике данных с помощью объекта SyncProvider для объекта CachedRowSet. |
Методы, объявленные в интерфейсе CachedRowSet
acceptChanges, acceptChanges, columnUpdated, columnUpdated, commit, createCopy, createCopyNoConstraints, createCopySchema, createShared, execute, getKeyColumns, getOriginal, getOriginalRow, getPageSize, getRowSetWarnings, getShowDeleted, getSyncProvider, getTableName, nextPage, populate, populate, previousPage, release, restoreOriginal, rollback, rollback, rowSetPopulated, setKeyColumns, setMetaData, setOriginalRow, setPageSize, setShowDeleted, setSyncProvider, setTableName, size, toCollection, toCollection, toCollection, undoDelete, undoInsert, undoUpdate
Методы, объявленные в интерфейсе Joinable
getMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn
Методы, объявленные в интерфейсе 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
Методы, объявленные в интерфейсе 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
Методы, объявленные в интерфейсе Wrapper
isWrapperFor, unwrap
Подробное описание полей
CROSS_JOIN
static final int CROSS_JOIN
JOIN в стиле ANSI, обеспечивающий декартово произведение двух таблиц- См. также:
INNER_JOIN
static final int INNER_JOIN
JOIN в стиле ANSI, обеспечивающий внутреннее соединение двух таблиц. Все несовпадающие строки в любой из таблиц соединения должны быть отброшены.- См. также:
LEFT_OUTER_JOIN
static final int LEFT_OUTER_JOIN
JOIN в стиле ANSI, обеспечивающий левое внешнее соединение двух таблиц. В SQL это означает, что должны быть возвращены все записи из левой части оператора JOIN.- См. также:
RIGHT_OUTER_JOIN
static final int RIGHT_OUTER_JOIN
JOIN в стиле ANSI, обеспечивающий правое внешнее соединение двух таблиц. В SQL это означает, что возвращаются все записи из таблицы в правой части оператора JOIN, даже если в таблице слева нет соответствующей записи.- См. также:
FULL_JOIN
static final int FULL_JOIN
JOIN в стиле ANSI, обеспечивающий полное соединение JOIN. Указывает, что должны быть возвращены все строки из обеих таблиц независимо от наличия соответствующих записей в другой таблице.- См. также:
Подробное описание методов
addRowSet
void addRowSet(Joinable rowset) throws SQLException
RowSet к этому объекту JoinRowSet. Если объект RowSet является первым, добавленным к этому объекту JoinRowSet, он становится основой устанавливаемой связи JOIN. Этот метод следует использовать только в том случае, если указанный объект RowSet уже содержит столбец сопоставления, заданный методом Joinable setMatchColumn.
Примечание. Объект Joinable — это любой объект RowSet, реализующий интерфейс Joinable.
- Параметры:
-
rowset— объектRowSet, который необходимо добавить к этому объектуJoinRowSet; он должен реализовывать интерфейсJoinableи иметь заданный столбец сопоставления - Исключения:
-
SQLException— если (1) к этому объектуJoinRowSetдобавляется пустый набор строк, (2) для rowset не задан столбец сопоставления или (3) rowset нарушает активноеJOIN - См. также:
addRowSet
void addRowSet(RowSet rowset, int columnIdx) throws SQLException
RowSet к этому объекту JoinRowSet и задает указанный столбец в качестве столбца сопоставления для объекта RowSet. Если объект RowSet является первым, добавленным к этому объекту JoinRowSet, он становится основой устанавливаемой связи JOIN. Этот метод следует использовать, если для RowSet еще не задан столбец сопоставления.
- Параметры:
-
rowset— объектRowSet, который необходимо добавить к этому объектуJoinRowSet; он может реализовывать интерфейсJoinable -
columnIdx—int, указывающий столбец, который следует использовать в качестве столбца сопоставления - Исключения:
-
SQLException— если (1) rowset является пустым набором строк или (2) rowset нарушает активноеJOIN - См. также:
addRowSet
void addRowSet(RowSet rowset, String columnName) throws SQLException
JoinRowSet и задает указанный столбец в качестве столбца сопоставления. Если rowset является первым, добавленным к этому объекту JoinRowSet, он становится основой устанавливаемой связи JOIN. Этот метод следует использовать, если указанный объект RowSet еще не содержит столбца сопоставления.
- Параметры:
-
rowset— объектRowSet, который необходимо добавить к этому объектуJoinRowSet; он может реализовывать интерфейсJoinable -
columnName— объектString, содержащий имя столбца, который следует задать в качестве столбца сопоставления - Исключения:
-
SQLException— если (1) rowset является пустым набором строк или (2) столбец сопоставления для rowset не удовлетворяет условиямJOIN
addRowSet
void addRowSet(RowSet[] rowset, int[] columnIdx) throws SQLException
RowSet, содержащихся в указанном массиве объектов RowSet, к этому объекту JoinRowSet и задает столбец сопоставления для каждого объекта RowSet согласно индексам столбцов в указанном массиве. Первый элемент в columnIdx задается как столбец сопоставления для первого объекта RowSet в rowset, второй элемент columnIdx — как столбец сопоставления для второго элемента в rowset и так далее. Первый объект RowSet, добавленный к этому объекту JoinRowSet, становится основой связи JOIN.
Этот метод следует использовать, если для указанного объекта RowSet еще не задан столбец сопоставления.
- Параметры:
-
rowset— массив из одного или нескольких объектовRowSet, которые следует добавить кJOIN; он может реализовывать интерфейсJoinable -
columnIdx— массив значенийint, указывающих индексы столбцов, которые следует задать в качестве столбцов сопоставления для объектовRowSetв rowset - Исключения:
-
SQLException— если (1) к этому объектуJoinRowSetдобавляется пустой набор строк, (2) для объектаRowSetв rowset не задан столбец сопоставления или (3) добавляемый объектRowSetнарушает активноеJOIN
addRowSet
void addRowSet(RowSet[] rowset, String[] columnName) throws SQLException
RowSet, содержащихся в указанном массиве объектов RowSet, к этому объекту JoinRowSet и задает столбец сопоставления для каждого объекта RowSet согласно именам столбцов в указанном массиве. Первый элемент в columnName задается как столбец сопоставления для первого объекта RowSet в rowset, второй элемент columnName — как столбец сопоставления для второго элемента в rowset и так далее. Первый объект RowSet, добавленный к этому объекту JoinRowSet, становится основой связи JOIN.
Этот метод следует использовать, если для указанных объектов RowSet еще не заданы столбцы сопоставления.
- Параметры:
-
rowset— массив из одного или нескольких объектовRowSet, которые следует добавить кJOIN; он может реализовывать интерфейсJoinable -
columnName— массив значенийString, указывающих имена столбцов, которые следует задать в качестве столбцов сопоставления для объектовRowSetв rowset - Исключения:
-
SQLException— если (1) к этому объектуJoinRowSetдобавляется пустой набор строк, (2) для объектаRowSetв rowset не задан столбец сопоставления или (3) добавляемый объектRowSetнарушает активноеJOIN
getRowSets
Collection<?> getRowSets() throws SQLException
Collection, содержащий объекты RowSet, добавленные к этому объекту JoinRowSet. Он должен возвращать количество RowSet «n», содержащихся в JOIN, и сохранять все обновления, выполненные во время этого объединения.- Возвращает:
- объект
Collection, состоящий из объектовRowSet, добавленных к этому объектуJoinRowSet - Исключения:
-
SQLException— если при создании возвращаемого объектаCollectionпроизошла ошибка
getRowSetNames
String[] getRowSetNames() throws SQLException
String, содержащий имена объектов RowSet, добавленных к этому объекту JoinRowSet.- Возвращает:
- массив
Stringс именами объектовRowSetв этом объектеJoinRowSet - Исключения:
-
SQLException— если при получении имен объектовRowSetпроизошла ошибка - См. также:
toCachedRowSet
CachedRowSet toCachedRowSet() throws SQLException
CachedRowSet, содержащий данные этого объекта JoinRowSet, который можно сохранить в источнике данных, используя объект SyncProvider для объекта CachedRowSet. Если к JoinRowSet были применены обновления или изменения, возвращаемый этим методом CachedRowSet не сможет сохранить их в исходных строках и таблицах источника данных. Возвращаемый экземпляр CachedRowSet не должен содержать данных об изменениях; он также должен очистить все свойства исходного SQL-оператора. Приложению следует сбросить SQL-оператор с помощью метода RowSet.setCommand.
Чтобы изменения можно было сохранить в исходных таблицах источника данных, следует использовать метод acceptChanges и вызвать его для экземпляра объекта JoinRowSet. Реализации могут использовать внутренние механизмы отслеживания данных и обновлений для взаимодействия с SyncProvider и сохранения изменений.
- Возвращает:
- CachedRowSet, содержащий содержимое JoinRowSet
- Исключения:
-
SQLException— если при формировании объекта CachedRowSet произошла ошибка - См. также:
supportsCrossJoin
boolean supportsCrossJoin()
- Возвращает:
- true, если CROSS_JOIN поддерживается; в противном случае false
supportsInnerJoin
boolean supportsInnerJoin()
- Возвращает:
- true, если INNER_JOIN поддерживается; в противном случае false
supportsLeftOuterJoin
boolean supportsLeftOuterJoin()
- Возвращает:
- true, если LEFT_OUTER_JOIN поддерживается; в противном случае false
supportsRightOuterJoin
boolean supportsRightOuterJoin()
- Возвращает:
- true, если RIGHT_OUTER_JOIN поддерживается; в противном случае false
supportsFullJoin
boolean supportsFullJoin()
- Возвращает:
- true, если FULL_JOIN поддерживается; в противном случае false
setJoinType
void setJoinType(int joinType) throws SQLException
JOIN, применяемого к таблицам, содержащимся в экземпляре объекта JoinRowSet. Реализации должны генерировать SQLException, если они не поддерживают указанный тип JOIN.- Параметры:
-
joinType— стандартное определение статического поля JoinRowSet.XXX, обозначающее SQLJOIN, для динамического изменения конфигурации экземпляра JoinRowSet. - Исключения:
-
SQLException— если задан неподдерживаемый типJOIN - См. также:
getWhereClause
String getWhereClause() throws SQLException
JOIN, предоставив строковое описание SQL для JOIN, либо предоставить текстовое описание, помогающее приложениям, использующим JoinRowSet
- Возвращает:
- whereClause — текстовое описание или описание на языке SQL логического предложения WHERE, используемого в экземпляре JoinRowSet
- Исключения:
-
SQLException— если при создании представления предложения WHERE произошла ошибка.
getJoinType
int getJoinType() throws SQLException
int, описывающий заданный тип SQL JOIN, определяющий поведение этого экземпляра JoinRowSet. Возвращаемый тип будет одним из стандартных типов JoinRowSet: CROSS_JOIN, INNER_JOIN, LEFT_OUTER_JOIN, RIGHT_OUTER_JOIN или FULL_JOIN.- Возвращает:
- joinType — одно из стандартных определений статических полей JoinRowSet, обозначающих SQL
JOIN.JoinRowSet.INNER_JOINвозвращается по умолчанию, если типJOINявно не задан. - Исключения:
-
SQLException— если при определении типа SQLJOIN, поддерживаемого экземпляром JoinRowSet, произошла ошибка. - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.sql.rowset/javax/sql/rowset/JoinRowSet.html