Интерфейс 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 . Это означает, что как подключенные, так и отсоединенные объекты RowSet могут входить в состав JOIN. Объекты RowSet , работающие в подключенной среде (объекты JdbcRowSet ), должны использовать базу данных, к которой они уже подключены, для непосредственного установления SQL-отношений JOIN между таблицами. Однако, при необходимости, объект JdbcRowSet может быть добавлен к объекту JoinRowSet .

Любое количество объектов RowSet может быть добавлено к экземпляру объекта JoinRowSet , при условии, что они могут быть связаны в 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 . Приложения должны определить, какой столбец в каждом из объектов RowSet , которые должны быть добавлены в объект JoinRowSet , должен быть столбцом сопоставления. Все объекты RowSet должны содержать столбец сопоставления, а значения в каждом столбце сопоставления должны быть такими, которые можно сравнить со значениями в других столбцах сопоставления. Столбцы не обязательно должны иметь одинаковое имя, хотя часто и имеют, и они не обязательно должны хранить точно такой же тип данных, если только типы данных можно сравнить.

Столбец сопоставления можно установить двумя способами:

  • Вызвать метод Joinable setMatchColumn
    Это единственный метод, который может установить столбец сопоставления до добавления объекта RowSet в объект JoinRowSet . Объект RowSet должен реализовать интерфейс Joinable для использования метода setMatchColumn. После установки значения столбца сопоставления этот метод можно использовать для сброса столбца сопоставления в любое время.
  • Вызвать одну из версий метода JoinRowSet addRowSet , которая принимает имя или номер столбца (или массив имён или номеров столбцов)
    Четыре из пяти методов 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 . В этом случае все лица в рамках плана бонусов являются сотрудниками, поэтому все строки таблицы ESSP_BONUS_PLAN добавляются в объект JoinRowSet . В этом примере оба объекта 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);

Обратите внимание, что поскольку SQL-соединение должно выполняться, когда приложение добавляет второй или последующий объект RowSet , может произойти начальное ухудшение производительности во время выполнения 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 теперь содержит значения из всех трех таблиц. Данные в каждой строке в four01k, в которой значение столбца EMP_ID совпадает со значением столбца EMP_ID в jrs, были добавлены в 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 int CROSS_JOIN

ANSI-стиль JOIN , предоставляющий декартово произведение двух таблиц

static int FULL_JOIN

ANSI-стиль JOIN , обеспечивающий полное соединение.

static int INNER_JOIN

ANSI-стиль JOIN , обеспечивающий внутреннее соединение между двумя таблицами.

static int LEFT_OUTER_JOIN

ANSI-стиль JOIN , обеспечивающий левое внешнее соединение между двумя таблицами.

static int RIGHT_OUTER_JOIN

ANSI-стиль JOIN , обеспечивающий правое внешнее соединение между двумя таблицами.

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

COMMIT_ON_ACCEPT_CHANGES

Поля, объявленные в интерфейсе 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

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

PUBLIC_XML_SCHEMA, SCHEMA_SYSTEM_ID

Методы

Модификатор и тип Метод Описание
void addRowSet​(Joinable rowset)

Добавляет указанный объект RowSet к этому объекту JoinRowSet.

void addRowSet​(RowSet[] rowset, int[] columnIdx)

Добавляет один или несколько объектов RowSet из заданного массива объектов RowSet к этому объекту JoinRowSet и устанавливает столбец соответствия для каждого из объектов RowSet на столбцы соответствия в заданном массиве индексов столбцов.

void addRowSet​(RowSet[] rowset, String[] columnName)

Добавляет один или несколько объектов RowSet из заданного массива объектов RowSet к этому объекту JoinRowSet и устанавливает столбец соответствия для каждого из объектов RowSet на столбцы соответствия в заданном массиве имён столбцов.

void addRowSet​(RowSet rowset, int columnIdx)

Добавляет указанный объект RowSet к этому объекту JoinRowSet и устанавливает назначенный столбец в качестве столбца соответствия для объекта RowSet.

void addRowSet​(RowSet rowset, String columnName)

Добавляет 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​(int joinType)

Разрешает применению настроить тип JOIN, накладываемый на таблицы, содержащиеся в экземпляре объекта JoinRowSet.

boolean supportsCrossJoin()

Указывает, поддерживает ли реализация JoinRowSet тип CROSS_JOIN.

boolean supportsFullJoin()

Указывает, поддерживает ли реализация JoinRowSet тип FULL_JOIN.

boolean supportsInnerJoin()

Указывает, поддерживает ли реализация JoinRowSet тип INNER_JOIN.

boolean supportsLeftOuterJoin()

Указывает, поддерживает ли реализация JoinRowSet тип LEFT_OUTER_JOIN.

boolean supportsRightOuterJoin()

Указывает, поддерживает ли реализация JoinRowSet тип RIGHT_OUTER_JOIN.

CachedRowSet toCachedRowSet()

Создаёт новый объект CachedRowSet, содержащий данные из этого объекта JoinRowSet, который можно сохранить в источник данных, используя объект SyncProvider для объекта CachedRowSet.

Методы, объявленные в интерфейсе javax.sql.rowset.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

Методы, объявленные в интерфейсе 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

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

readXml, readXml, writeXml, writeXml, writeXml, writeXml

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

isWrapperFor, unwrap

Подробное описание полей

CROSS_JOIN

static final int CROSS_JOIN

Стиль ANSI JOIN, предоставляющий декартово произведение двух таблиц

См. также:
Значения константных полей

INNER_JOIN

static final int INNER_JOIN

Стиль ANSI JOIN, предоставляющий внутреннее соединение между двумя таблицами. Любые несовпадающие строки в любой из таблиц соединения должны быть отброшены.

См. также:
Значения константных полей

LEFT_OUTER_JOIN

static final int LEFT_OUTER_JOIN

Стиль ANSI JOIN, предоставляющий левое внешнее соединение между двумя таблицами. В SQL это описывается, где должны возвращаться все записи из левой части оператора JOIN.

См. также:
Значения константных полей

RIGHT_OUTER_JOIN

static final int RIGHT_OUTER_JOIN

Стиль ANSI JOIN, предоставляющий правое внешнее соединение между двумя таблицами. В SQL это описывается как требование возвращения всех записей из таблицы справа от оператора JOIN, даже если в таблице слева нет соответствующей записи.

См. также:
Значения константных полей

FULL_JOIN

static final int FULL_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
См. также:
Joinable.setMatchColumn(int)

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
См. также:
Joinable.unsetMatchColumn(int)

addRowSet

void addRowSet(RowSet rowset,
               String columnName)
        throws SQLException

Добавляет rowset к этому объекту 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. Это должно вернуть 'n' количество RowSet, содержащихся в JOIN, и сохранить любые обновления, которые произошли во время этого объединения.

Возвращает:
объект Collection, состоящий из объектов RowSet, добавленных к этому объекту JoinRowSet
Исключения:
SQLException - если возникает ошибка при генерации объекта Collection, который должен быть возвращен

getRowSetNames

String[] getRowSetNames()
                 throws SQLException

Возвращает массив String, содержащий имена объектов RowSet, добавленных к этому объекту JoinRowSet.

Возвращает:
массив String имен объектов RowSet в этом объекте JoinRowSet
Исключения:
SQLException - если возникает ошибка при извлечении имен объектов RowSet
См. также:
CachedRowSet.setTableName(java.lang.String)

toCachedRowSet

CachedRowSet toCachedRowSet()
                     throws SQLException

Создает новый объект CachedRowSet, содержащий данные в этом объекте JoinRowSet, который может быть сохранен в источник данных с использованием объекта SyncProvider для объекта CachedRowSet.

Если какие-либо обновления или изменения были применены к JoinRowSet, CachedRowSet, возвращаемый методом, не сможет сохранить свои изменения обратно в исходные строки и таблицы в источнике данных. Возвращаемый экземпляр CachedRowSet не должен содержать данные о модификации, и он должен очистить все свойства своего исходного оператора SQL. Приложение должно сбросить оператор SQL с помощью метода RowSet.setCommand.

Для того, чтобы изменения сохранялись обратно в источник данных в исходные таблицы, следует использовать метод acceptChanges и вызывать его для экземпляра объекта JoinRowSet. Реализации могут использовать внутренние данные и отслеживание изменений в своих реализациях для взаимодействия с SyncProvider для сохранения любых изменений.

Возвращает:
CachedRowSet, содержащий содержимое JoinRowSet
Исключения:
SQLException - если возникает ошибка при сборке объекта CachedRowSet
См. также:
RowSet, CachedRowSet, SyncProvider

supportsCrossJoin

boolean supportsCrossJoin()

Указывает, поддерживается ли CROSS_JOIN реализацией JoinRowSet

Возвращает:
true, если CROSS_JOIN поддерживается; false в противном случае

supportsInnerJoin

boolean supportsInnerJoin()

Указывает, поддерживается ли INNER_JOIN реализацией JoinRowSet

Возвращает:
true, если INNER_JOIN поддерживается; false в противном случае

supportsLeftOuterJoin

boolean supportsLeftOuterJoin()

Указывает, поддерживается ли LEFT_OUTER_JOIN реализацией JoinRowSet

Возвращает:
true, если LEFT_OUTER_JOIN поддерживается; false в противном случае

supportsRightOuterJoin

boolean supportsRightOuterJoin()

Указывает, поддерживается ли RIGHT_OUTER_JOIN реализацией JoinRowSet

Возвращает:
true, если RIGHT_OUTER_JOIN поддерживается; false в противном случае

supportsFullJoin

boolean supportsFullJoin()

Указывает, поддерживается ли FULL_JOIN реализацией JoinRowSet

Возвращает:
true, если FULL_JOIN поддерживается; false в противном случае

setJoinType

void setJoinType(int joinType)
          throws SQLException

Позволяет приложению корректировать тип JOIN, накладываемый на таблицы, содержащиеся в экземпляре объекта JoinRowSet. Реализации должны вызывать SQLException, если они не поддерживают заданный тип JOIN.

Параметры:
joinType - стандартное статическое поле JoinRowSet.XXX определения SQL JOIN для переконфигурации экземпляра JoinRowSet в реальном времени.
Исключения:
SQLException - если установлен неподдерживаемый тип JOIN
См. также:
getJoinType()

getWhereClause

String getWhereClause()
               throws SQLException

Возвращает SQL-подобное описание условия WHERE, используемого в объекте JoinRowSet. Реализация может описать условие WHERE SQL JOIN путём предоставления описания SQL-строк JOIN или текстового описания для помощи приложениям, использующим JoinRowSet

Возвращает:
whereClause текстовое или SQL-описание логического условия WHERE, используемого в экземпляре JoinRowSet
Исключения:
SQLException - если произошла ошибка при генерации представления условия WHERE.

getJoinType

int getJoinType()
         throws SQLException

Возвращает описание типа 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 - если произошла ошибка при определении типа SQL JOIN поддерживаемого экземпляром JoinRowSet.
См. также:
setJoinType(int)

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

Spec-Zone .ru
спецификации, руководства, описания, API