public interface JoinRowSet extends WebRowSet
JoinRowSetã€ã³ã¿ãã§ãŒã¹ã¯ãç°ãªã£ãRowSetãªããžã§ã¯ãã®é¢é£ããŒã¿ããSQL JOINã衚ã1ã€ã®JoinRowSetãªããžã§ã¯ãã«ãŸãšããã¡ã«ããºã ãæäŸããŸãã ã€ãŸããJoinRowSetãªããžã§ã¯ãã¯ãSQL JOINé¢ä¿ã圢æããRowSetãªããžã§ã¯ãããã®ããŒã¿ã®ã³ã³ãããšããŠåäœããŸãã
Joinableã€ã³ã¿ãã§ãŒã¹ã¯ãSQL JOINé¢ä¿ç¢ºç«ã®åºç€ãšãªãäžèŽåã®èšå®ãååŸãããã³èšå®è§£é€ã®ã¡ãœãããæäŸããŸãã ãŸãã¯ãäžèŽåã¯JointRowSetã®addRowSetã¡ãœããã®é©åãªããŒãžã§ã³ãæå®ããããšã«ãã£ãŠãèšå®ã§ããŸãã
RowSetãªããžã§ã¯ã(CachedRowSetãªããžã§ã¯ããšãCachedRowSetã€ã³ã¿ãã§ãŒã¹ãæ¡åŒµããå®è£
)ã¯ãããŒã¿ã»ãœãŒã¹ã«åæ¥ç¶ããæéãªãã§ãRowSetãªããžã§ã¯ãéã«SQL JOINã確ç«ããæšæºã®æ¹æ³ãæã¡ãŸããã JoinRowSetã€ã³ã¿ãã§ãŒã¹ã¯ããã®ããŒãºã«å¯Ÿå¿ããããã«èšèšãããŠããŸãã
JoinRowSetãªããžã§ã¯ãã«RowSetãªããžã§ã¯ãã远å ããŠãSQL JOINé¢ä¿ãæ§æã§ããŸãã ã€ãŸããRowSetãªããžã§ã¯ãã¯ãæ¥ç¶ãããŠããå Žåã§ãæªæ¥ç¶ã®å Žåã§ããJOINãæ§æããããšãã§ããŸãã æ¥ç¶ç°å¢ã§åäœããRowSetãªããžã§ã¯ã(JdbcRowSetãªããžã§ã¯ã)ã¯ããã§ã«æ¥ç¶ããŠããããŒã¿ããŒã¹ã䜿ã£ãŠã衚éã«çŽæ¥SQL JOINé¢ä¿ã確ç«ããããšããå§ãããŸãã ããããå¿
èŠã«å¿ããŠãJoinRowSetãªããžã§ã¯ãã«JdbcRowSetãªããžã§ã¯ãã远å ããããšãã§ããŸãã
åäžã®SQL JOINã«é¢é£ä»ããããJoinRowSetã®ã€ã³ã¹ã¿ã³ã¹ã§ããã°ãä»»æã®æ°ã®RowSetãªããžã§ã¯ãããã®ã€ã³ã¹ã¿ã³ã¹ã«è¿œå ã§ããŸãã å®çŸ©ã«ãããšãSQL JOINæã¯ãè€æ°ã®ãªã¬ãŒã·ã§ãã«ã»ããŒã¿ããŒã¹ã»ããŒãã«ã«æ ŒçŽãããããŒã¿ããå
±éã®å±æ§ã«åºã¥ããŠãŸãšããããã«äœ¿çšãããŸãã Joinableã€ã³ã¿ãã§ãŒã¹ã¯ãäžèŽåã®èšå®ã«ããå
±é屿§ãäœæããã¡ãœãããæäŸããŸãã äžèŽåã¯ãäžè¬çã«äž»ããŒãšäžèŽããŸãããå¿
ãããäžèŽåãäž»ããŒãšåäžã§ããå¿
èŠã¯ãããŸããã åã®äžèŽã確ç«ããé©çšããããšã§ãJoinRowSetãªããžã§ã¯ãã¯ã䜿çšå¯èœãªãªã¬ãŒã·ã§ãã«ã»ããŒã¿ããŒã¹ã䜿çšããã«ãRowSetãªããžã§ã¯ãéã«JOINé¢ä¿ã確ç«ããŸãã
確ç«ãããJOINã®åã¯ãsetJoinTypeã¡ãœããã䜿ã£ãŠJoinRowSet宿°ã1ã€èšå®ããããšã§æ±ºå®ãããŸãã æ¬¡ã®SQL JOINåãèšå®ã§ããŸãã
CROSS_JOIN
FULL_JOIN
INNER_JOIN - JOINåãèšå®ãããŠããªãå Žåã®ããã©ã«ã
LEFT_OUTER_JOIN
RIGHT_OUTER_JOIN
JOINã¯èªåçã«å
éšçµåã«ãªããŸãã JoinRowSetã€ã³ã¿ãã§ãŒã¹ã®ãã£ãŒã«ãã®ã³ã¡ã³ãã«ãæšæºSQL JOINåã§ãããããã®JOINåã説æãããŠããŸãã
JoinRowSetãªããžã§ã¯ãã«ããJOINã®äœæJoinRowSetãªããžã§ã¯ãã®äœææã«ã¯ããã®ãªããžã§ã¯ãã¯ç©ºã®ç¶æ
ã§ãã æåã«è¿œå ãããRowSetãªããžã§ã¯ããJOINé¢ä¿ã®åºç€ã«ãªããŸãã ã¢ããªã±ãŒã·ã§ã³ã§ã¯ãJoinRowSetãªããžã§ã¯ãã«è¿œå ããåRowSetãªããžã§ã¯ãã®ã©ã®åãäžèŽåã«ããããæ±ºå®ããå¿
èŠããããŸãã ãã¹ãŠã®RowSetãªããžã§ã¯ãã«äžèŽåãæ ŒçŽãããåäžèŽåã®å€ã¯ãã»ãã®äžèŽåã®å€ãšæ¯èŒå¯èœãªå€ã§ããå¿
èŠããããŸãã åã«ã¯åãååãä»ããããšãå€ãã§ããããã®å¿
èŠã¯ãªããæ¯èŒå¯èœãªããŒã¿åã§ããã°ããŸã£ããåãããŒã¿åãæ ŒçŽããå¿
èŠããããŸããã
äžèŽåã¯ã次ã®2ãšããã®æ¹æ³ã§èšå®ã§ããŸãã
Joinableã®setMatchColumnã¡ãœããã®åŒåºãã«ããèšå®ãRowSetãªããžã§ã¯ããJoinRowSetãªããžã§ã¯ãã«è¿œå ããåã«äžèŽåãèšå®ã§ããå¯äžã®æ¹æ³ã§ãã setMatchColumnã¡ãœããã䜿çšããã«ã¯ãRowSetãªããžã§ã¯ããJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ããŠããå¿
èŠããããŸãã äžèŽåå€ãèšå®ãããããã®ã¡ãœããã䜿çšããŠããã€ã§ãäžèŽåããªã»ããã§ããŸãã
JoinRowSetã®addRowSetã¡ãœããã®ããããã®ããŒãžã§ã³ã®åŒåºãã«ããèšå®ãaddRowSetã¡ãœããã®ãã¡4ã€ã¯ãäžèŽåããã©ã¡ãŒã¿ã«åããŸãã ãããã®4ã€ã®ã¡ãœããã¯ãRowSetãªããžã§ã¯ããJoinRowSetãªããžã§ã¯ããžè¿œå ããããšãã«ãäžèŽåãèšå®ãŸãã¯ãªã»ããããŸãã
次ã®ã³ãŒãã®æç²ã§ã¯ãJoinRowSetãªããžã§ã¯ãã«2ã€ã®CachedRowSetãªããžã§ã¯ãã远å ããŸãã ãã®äŸã§ã¯ãSQL JOINåã§ã¯ãªããããã©ã«ãã®JOINåã§ããINNER_JOINã確ç«ãããŠããç¹ã«æ³šç®ããŠãã ããã
次ã®ã³ãŒãã®æç²ã§ã¯ã衚EMPLOYEES (æåã®åEMP_IDãäžèŽåã«èšå®ãããŠãã)ããJoinRowSetãªããžã§ã¯ãjrsã«è¿œå ãããŸãã ç¶ããŠã衚ESSP_BONUS_PLAN (äžèŽåã¯åããEMP_IDå)ã远å ãããŸãã ãã®2çªç®ã®è¡šãjrsã«è¿œå ããããšãã远å ãããã®ã¯ã衚EMPLOYEESå
ã®EMP_IDå€ã«äžèŽããEMP_IDå€ãæã€ESSP_BONUS_PLANå
ã®åã ãã§ãã ãã®å ŽåãããŒãã¹å¶åºŠ(bonus plan)ã®å
šå¡ãåŸæ¥å¡(employee)ã§ããããã衚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ã¯ã2ã€ã®RowSetãªããžã§ã¯ãã®EMP_IDåã«åºã¥ãå
éšJOINã«ãªããŸãã ã¢ããªã±ãŒã·ã§ã³ã¯ãããããåäžã®RowSetãªããžã§ã¯ãããã©ãŠãºãããã®ããã«ããŠãçµåãããããŒã¿ããã©ãŠãºã§ããŸãã jrs ièªäœãRowSetãªããžã§ã¯ããªã®ã§ãã¢ããªã±ãŒã·ã§ã³ã¯ãRowSetã¡ãœããã䜿ã£ãŠãjrsã®ããã²ãŒãã倿Žãè¡ãããšãã§ããŸãã
jrs.first();
int employeeID = jrs.getInt(1);
String employeeName = jrs.getString(2);
ã¢ããªã±ãŒã·ã§ã³ã2çªç®ãŸãã¯åŸç¶ã®RowSetãªããžã§ã¯ãã远å ããå Žåã¯ãSQL JOINãé©çšããå¿
èŠãããã®ã§ãJOINã®å®è¡æã«åæããã©ãŒãã³ã¹ãäœäžããå¯èœæ§ããããŸãã
次ã®ã³ãŒãã®æç²ã¯ããã®ä»ã®CachedRowSetãªããžã§ã¯ãã远å ããŸãã ãã®äŸã§ã¯ãJoinRowSetãªããžã§ã¯ãã«CachedRowSetã远å ããããšããäžèŽå(EMP_ID)ãèšå®ãããŸãã
ResultSet rs3 = stmt.executeQuery("SELECT * FROM 401K_CONTRIB");
CachedRowSet fourO1k = new CachedRowSetImpl();
four01k.populate(rs3);
jrs.addRowSet(four01k, 1);
JoinRowSetãªããžã§ã¯ãjrsã«ã3ã€ã®è¡šã®å€ããã¹ãŠè¿œå ãããŸããã EMP_IDåã®å€ãjrså
ã®EMP_IDåã®å€ãšäžèŽããŠããfour01kå
ã®åè¡ã®ããŒã¿ããjrsã«è¿œå ãããŠããŸãã
JoinRowSetã®ã¡ãœããJoinRowSetã€ã³ã¿ãã§ãŒã¹ã¯ãRowSetãªããžã§ã¯ãã®è¿œå ãJoinRowSetãªããžã§ã¯ãã®æ
å ±ã®ååŸãè¡ãè€æ°ã®ã¡ãœãããæäŸããŸãã
RowSetãªããžã§ã¯ãã远å ããã¡ãœããRowSetãªããžã§ã¯ãã远å ããããšãããŸãã¯åæã«è€æ°ã®RowSetãªããžã§ã¯ãã远å ããããšãã§ããŸãã ã©ã¡ãã®å Žåã§ããã¡ãœããã¯ã远å ãããåRowSetãªããžã§ã¯ãã®äžèŽåãæå®ã§ããŸãã
JoinRowSetãªããžã§ã¯ãå
ã®RowSetãªããžã§ã¯ããååŸããã¡ãœããããRowSetåãååŸããã¡ãœããããããŸãã ãŸããJOINãæ§æããããã«èåŸã§äœ¿çšãããSQL WHEREç¯ãŸãã¯WHEREç¯ã®å®è¡å
容ã説æããããã¹ããååŸããã¡ãœããããããŸãã
JOINã®åã«é¢é£ããã¡ãœããJOINåãèšå®ããã¡ãœããã1ã€ãJoinRowSetãªããžã§ã¯ããæå®ãããåããµããŒããããã©ããã確èªããã¡ãœããã5ã€ãããŸãã
JoinRowSetãªããžã§ã¯ãã®ã³ããŒãäœæããã¡ãœãã| 修食åãšå | ãã£ãŒã«ã | 説æ |
|---|---|---|
static int |
CROSS_JOIN |
2ã€ã®è¡šã®ã¯ãã¹è£œåãæäŸããANSIå
JOINã§ãã |
static int |
FULL_JOIN |
å®å
šJOINãæäŸããANSIå
JOINã§ãã |
static int |
INNER_JOIN |
2ã€ã®è¡šãå
éšçµåãããANSIå
JOINã§ãã |
static int |
LEFT_OUTER_JOIN |
2ã€ã®è¡šãå·Šå€éšçµåãããANSIå
JOINã§ãã |
static int |
RIGHT_OUTER_JOIN |
2ã€ã®è¡šãå³å€éšçµåãããANSIå
JOINã§ãã |
PUBLIC_XML_SCHEMA, SCHEMA_SYSTEM_IDCOMMIT_ON_ACCEPT_CHANGESCLOSE_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 |
addRowSet(Joinable rowset) |
æå®ããã
RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããŸãã |
void |
addRowSet(RowSet[] rowset, int[] columnIdx) |
æå®ããã
RowSetãªããžã§ã¯ãã®é
åã«å«ãŸãã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããåRowSetãªããžã§ã¯ãã®äžèŽåãæå®ãããåã€ã³ããã¯ã¹ã®é
åå
ã®äžèŽåã«èšå®ããŸãã |
void |
addRowSet(RowSet[] rowset, String[] columnName) |
æå®ããã
RowSetãªããžã§ã¯ãã®é
åã«å«ãŸãã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããåRowSetãªããžã§ã¯ãã®äžèŽåãæå®ãããååã®é
åå
ã®äžèŽåã«èšå®ããŸãã |
void |
addRowSet(RowSet rowset, int columnIdx) |
æå®ããã
RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããæå®ãããåãRowSetãªããžã§ã¯ãã®äžèŽåãšããŠèšå®ããŸãã |
void |
addRowSet(RowSet rowset, String columnName) |
rowsetããã®
JoinRowSetãªããžã§ã¯ãã«è¿œå ããæå®ãããåãäžèŽåã«èšå®ããŸãã |
int |
getJoinType() |
ãã®JoinRowSetã€ã³ã¹ã¿ã³ã¹ã管çããSQL
JOINåãèšè¿°ããintãè¿ããŸãã |
String[] |
getRowSetNames() |
ãã®
JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ãã®ååãå«ãStringé
åãè¿ããŸãã |
Collection<?> |
getRowSets() |
ãã®
JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ããå«ãCollectionãªããžã§ã¯ããè¿ããŸãã |
String |
getWhereClause() |
JoinRowSetãªããžã§ã¯ãã§äœ¿çšããããSQLã«ãã䌌ãWHEREç¯ã®èšè¿°ãè¿ããŸãã
|
void |
setJoinType(int joinType) |
ã¢ããªã±ãŒã·ã§ã³ã«ãJoinRowSetãªããžã§ã¯ãã»ã€ã³ã¹ã¿ã³ã¹å
ã®è¡šã«é©çšããã
JOINã®åã®èª¿æŽãèš±å¯ããŸãã |
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() |
ãã®
JoinRowSetãªããžã§ã¯ãå
ã®ããŒã¿ãå«ãæ°ããCachedRowSetãªããžã§ã¯ããäœæããŸããããã¯ãCachedRowSetãªããžã§ã¯ãã®SyncProviderãªããžã§ã¯ãã䜿ã£ãŠãããŒã¿ã»ãœãŒã¹ã«ä¿åããããšãã§ããŸãã |
readXml, readXml, writeXml, writeXml, writeXml, writeXmlacceptChanges, 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, undoUpdateaddRowSetListener, 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, setUsernameabsolute, 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, wasNullisWrapperFor, unwrapgetMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumnstatic final int CROSS_JOIN
JOINã§ããstatic final int INNER_JOIN
JOINã§ãã çµåãã衚ã®ããããã«äžèŽããªãè¡ãããå Žåããã®è¡ã¯åé€ãããŸãã static final int LEFT_OUTER_JOIN
JOINã§ãã SQLã§ã¯ãJOINæã®å·ŠåŽãããã¹ãŠã®ã¬ã³ãŒããè¿ãããäœçœ®ãšããŠèšè¿°ãããŸãã static final int RIGHT_OUTER_JOIN
JOINã§ãã SQLã§ã¯ãå·ŠåŽã®è¡šã«äžèŽããã¬ã³ãŒãããªãå Žåã§ããJOINæã®å³åŽã®è¡šãããã¹ãŠã®ã¬ã³ãŒããè¿ãããäœçœ®ãšããŠèšè¿°ãããŸãã static final int FULL_JOIN
JOINã§ãã äžæ¹ã®è¡šãããããäžæ¹ã®è¡šã®äžèŽã¬ã³ãŒããšã¯ç¡é¢ä¿ã«è¿ããããã¹ãŠã®è¡ãæå®ããŸãã void addRowSet(Joinable rowset) throws SQLException
RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããŸãã RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããæåã®ãªããžã§ã¯ãã§ããå ŽåãJOINé¢ä¿ã確ç«ãããåºç€ãšãªããŸãã
ãã®ã¡ãœããã¯ãæå®ãããRowSetãªããžã§ã¯ããJoinableã®setMatchColumnã¡ãœããã§èšå®ãããäžèŽåããã§ã«æã£ãŠããå Žåã«ã®ã¿äœ¿çšããå¿
èŠããããŸãã
ããŒã: Joinableãªããžã§ã¯ãã¯ãJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ããŠããä»»æã®RowSetãªããžã§ã¯ãã§ãã
rowset - ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ããJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ããäžèŽåã»ãããæã£ãŠããå¿
èŠãããSQLException - (1)ãã®JoinRowSetãªããžã§ã¯ãã«ç©ºã®è¡ã»ããã远å ãããå Žåã(2) rowsetã«äžèŽåãèšå®ãããŠããªãå Žåã(3) rowsetãã¢ã¯ãã£ããªJOINã«éåããå ŽåJoinable.setMatchColumn(int)void addRowSet(RowSet rowset, int columnIdx) throws SQLException
RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããæå®ãããåãRowSetãªããžã§ã¯ãã®äžèŽåãšããŠèšå®ããŸãã RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããæåã®ãªããžã§ã¯ãã§ããå ŽåãJOINé¢ä¿ã確ç«ãããåºç€ãšãªããŸãã
ãã®ã¡ãœããã¯ãRowSetããŸã äžèŽåã»ãããæããªãå Žåã«äœ¿çšãããŸãã
rowset - ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ããJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ã§ããcolumnIdx - äžèŽåã«ãªãåã瀺ãintSQLException - (1) rowsetã空ã®è¡ã»ããã®å Žåã(2) rowsetãã¢ã¯ãã£ããªJOINã«éåããå ŽåJoinable.unsetMatchColumn(int)void addRowSet(RowSet rowset, String columnName) throws SQLException
JoinRowSetãªããžã§ã¯ãã«è¿œå ããæå®ãããåãäžèŽåã«èšå®ããŸãã rowsetãæåã«ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããå ŽåããããJOINé¢ä¿ã確ç«ãããåºç€ãšãªããŸãã
ãã®ã¡ãœããã¯ãæå®ãããRowSetãªããžã§ã¯ãããŸã äžèŽåãæããªãå Žåã«äœ¿çšãããŸãã
rowset - ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ããJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ã§ããcolumnName - äžèŽåãšããŠèšå®ãããåã®ååãæå®ããStringãªããžã§ã¯ãSQLException - (1) rowsetã空ã®è¡ã»ããã®å Žåã(2) rowsetã®äžèŽåãJOINæ¡ä»¶ãæºãããŠããªãå Žåvoid addRowSet(RowSet[] rowset, int[] columnIdx) throws SQLException
RowSetãªããžã§ã¯ãã®é
åã«å«ãŸãã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããåRowSetãªããžã§ã¯ãã®äžèŽåãæå®ãããåã€ã³ããã¯ã¹ã®é
åå
ã®äžèŽåã«èšå®ããŸãã columnIdxã®æåã®èŠçŽ ã¯ãrowsetã®æåã®RowSetãªããžã§ã¯ãã®äžèŽåãcolumnIdxã®2çªç®ã®èŠçŽ ã¯rowsetã®2çªç®ã®èŠçŽ ã®äžèŽå(以äžåæ§)ã«èšå®ãããŸãã
ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããæåã®RowSetãªããžã§ã¯ãããJOINé¢ä¿ã®åºç€ã«ãªããŸãã
ãã®ã¡ãœããã¯ãæå®ãããRowSetãªããžã§ã¯ãããŸã äžèŽåãæããªãå Žåã«äœ¿çšãããŸãã
rowset - JOINã«è¿œå ããã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãã®é
åãJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ã§ããcolumnIdx - rowsetã®RowSetãªããžã§ã¯ãã®äžèŽåãšããŠèšå®ããåã®ã€ã³ããã¯ã¹ã瀺ãintå€ã®é
åSQLException - (1)ãã®JoinRowSetãªããžã§ã¯ãã«ç©ºã®è¡ã»ããã远å ãããå Žåã(2) rowsetå
ã®RowSetãªããžã§ã¯ãã«äžèŽåãèšå®ãããŠããªãå Žåã(3)远å ãããRowSetãªããžã§ã¯ããã¢ã¯ãã£ããªJOINã«éåããå Žåvoid addRowSet(RowSet[] rowset, String[] columnName) throws SQLException
RowSetãªããžã§ã¯ãã®é
åã«å«ãŸãã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãããã®JoinRowSetãªããžã§ã¯ãã«è¿œå ããåRowSetãªããžã§ã¯ãã®äžèŽåãæå®ãããååã®é
åå
ã®äžèŽåã«èšå®ããŸãã columnNameã®æåã®èŠçŽ ã¯ãrowsetã®æåã®RowSetãªããžã§ã¯ãã®äžèŽåãcolumnNameã®2çªç®ã®èŠçŽ ã¯rowsetã®2çªç®ã®èŠçŽ ã®äžèŽå(以äžåæ§)ã«èšå®ãããŸãã
ãã®JoinRowSetãªããžã§ã¯ãã«è¿œå ãããæåã®RowSetãªããžã§ã¯ãããJOINé¢ä¿ã®åºç€ã«ãªããŸãã
ãã®ã¡ãœããã¯ãæå®ãããRowSetãªããžã§ã¯ã(è€æ°å¯)ããŸã äžèŽåãæããªãå Žåã«äœ¿çšãããŸãã
rowset - JOINã«è¿œå ããã1ã€ä»¥äžã®RowSetãªããžã§ã¯ãã®é
åãJoinableã€ã³ã¿ãã§ãŒã¹ãå®è£
ã§ããcolumnName - rowsetã®RowSetãªããžã§ã¯ãã®äžèŽåãšããŠèšå®ããåã®ååã瀺ãStringå€ã®é
åSQLException - (1)ãã®JoinRowSetãªããžã§ã¯ãã«ç©ºã®è¡ã»ããã远å ãããå Žåã(2) rowsetå
ã®RowSetãªããžã§ã¯ãã«äžèŽåãèšå®ãããŠããªãå Žåã(3)远å ãããRowSetãªããžã§ã¯ããã¢ã¯ãã£ããªJOINã«éåããå ŽåCollection<?> getRowSets() throws SQLException
JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ããå«ãCollectionãªããžã§ã¯ããè¿ããŸãã JOINå
ã®RowSetæ°nãè¿ãããã®å
±çšäœå
ã§çºçãããã¹ãŠã®æŽæ°ãä¿æããŸãã JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ãã§æ§æãããCollectionãªããžã§ã¯ãSQLException - è¿ãããCollectionãªããžã§ã¯ãã®çææã«ãšã©ãŒãçºçããå ŽåString[] getRowSetNames() throws SQLException
JoinRowSetãªããžã§ã¯ãã«è¿œå ãããRowSetãªããžã§ã¯ãã®ååãå«ãStringé
åãè¿ããŸããJoinRowSetãªããžã§ã¯ãå
ã®RowSetãªããžã§ã¯ãã®ååãå«ãStringé
åSQLException - RowSetãªããžã§ã¯ãã®ååã®ååŸæã«ãšã©ãŒãçºçããå ŽåCachedRowSet.setTableName(java.lang.String)CachedRowSet toCachedRowSet() throws SQLException
JoinRowSetãªããžã§ã¯ãå
ã®ããŒã¿ãå«ãæ°ããCachedRowSetãªããžã§ã¯ããäœæããŸããããã¯ãCachedRowSetãªããžã§ã¯ãã®SyncProviderãªããžã§ã¯ãã䜿ã£ãŠãããŒã¿ã»ãœãŒã¹ã«ä¿åããããšãã§ããŸãã
JoinRowSetã«æŽæ°ãŸãã¯å€æŽãé©çšããå Žåãã¡ãœããã«ãã£ãŠè¿ãããCachedRowSetã¯ããã®å€æŽãããŒã¿ã»ãœãŒã¹å
ã®å
ã®è¡ãšè¡šå
ã«æç¶ãããããšãã§ããŸããã è¿ãããCachedRowSetã€ã³ã¹ã¿ã³ã¹ã«ã¯ã倿ŽããŒã¿ã¯å«ãŸããŸããããŸããå
ã®SQLæã®ãã¹ãŠã®ããããã£ãã¯ãªã¢ãããŸãã ã¢ããªã±ãŒã·ã§ã³ã¯ãRowSet.setCommandã¡ãœããã䜿çšããŠããã®SQLæããªã»ããããã¹ãã§ãã
倿Žãå
ã®è¡šã®ããŒã¿ã»ãœãŒã¹ã«æç¶ãããããã«ã¯ãacceptChangesã¡ãœãããJoinRowSetãªããžã§ã¯ãã»ã€ã³ã¹ã¿ã³ã¹äžã«åŒã³åºããŸãã å®è£
ã§ã¯ãå®è£
å
ã®å
éšããŒã¿ãšæŽæ°è¿œè·¡æ©èœãå©çšããŠãSyncProviderãšå¯Ÿè©±ãã倿Žãæç¶ãããããŸãã
SQLException - CachedRowSetãªããžã§ã¯ãã®ã¢ã»ã³ãã«æã«ãšã©ãŒãçºçããå ŽåRowSetãCachedRowSetãSyncProviderboolean supportsCrossJoin()
boolean supportsInnerJoin()
boolean supportsLeftOuterJoin()
boolean supportsRightOuterJoin()
boolean supportsFullJoin()
void setJoinType(int joinType)
throws SQLException
JOINã®åã®èª¿æŽãèš±å¯ããŸãã å®è£
ã¯ãæå®ãããJOINåããµããŒãããªãå ŽåãSQLExceptionãã¹ããŒããŸãã joinType - JoinRowSetã€ã³ã¹ã¿ã³ã¹ããã ã¡ã«åæ§æãããSQL JOINã®æšæºJoinRowSet.XXX staticãã£ãŒã«ãå®çŸ©ãSQLException - ãµããŒããããŠããªãJOINåãèšå®ãããå ŽågetJoinType()String getWhereClause() throws SQLException
JOINã®SQLæååèšè¿°ãæäŸããããšã«ãããSQL JOINã®WHEREç¯ãèšè¿°ã§ããŸãããŸãã¯ãJoinRowSetã䜿çšããŠãã¢ããªã±ãŒã·ã§ã³ãè£å©ããããã¹ãèšè¿°ãæäŸã§ããŸãã SQLException - WHEREç¯ã®è¡šçŸã®çææã«ãšã©ãŒãçºçããå Žåãint getJoinType()
throws SQLException
JOINåãèšè¿°ããintãè¿ããŸãã è¿ãããåã¯æšæºJoinRowSetå(CROSS_JOINãINNER_JOINãLEFT_OUTER_JOINãRIGHT_OUTER_JOINããŸãã¯FULL_JOIN)ã®ããããã«ãªããŸãã JOINã®æšæºJoinRowSet staticãã£ãŒã«ãå®çŸ©ã®ããããã®joinTypeã æç€ºçã«åãèšå®ãããŠããªãå Žåã¯ãããã©ã«ãã®JOINåãšããŠJoinRowSet.INNER_JOINãè¿ãããã SQLException - JoinRowSetã€ã³ã¹ã¿ã³ã¹ã«ãã£ãŠãµããŒããããSQL JOINåã®å€ææã«ãšã©ãŒãçºçããå ŽåãsetJoinType(int) ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã