public interface JdbcRowSet extends RowSet, Joinable
JdbcRowSet
のすべての標準実装が実装しなければならない標準インタフェースです。
ResultSet
オブジェクトのラッパーです。したがって、JdbcRowSet
オブジェクトは、ツールがアプリケーションの組立てに利用できるBeansの1つになります。JdbcRowSet
は接続された行セットなので、JDBCテクノロジを使用可能なドライバを使用してデータベース接続を継続して保持します。また、ドライバを事実上のJavaBeansコンポーネントにします。
常にデータベースに接続されているので、JdbcRowSet
のインスタンスは、この接続上で呼出しを行い、続いてこれらをそのResultSet
オブジェクト上で呼び出します。その結果、たとえば結果セットは、Swingアプリケーションのコンポーネントになります。
JdbcRowSet
オブジェクトのもう1つの利点は、ResultSet
オブジェクトにスクロール機能と更新機能を持たせることができる点にあります。すべてのRowSet
オブジェクトは、デフォルトで、スクロール機能と更新機能を備えています。使用するドライバとデータベースが結果セットのスクロール機能や更新機能をサポートしない場合、アプリケーションはJdbcRowSet
オブジェクトにResultSet
オブジェクトのデータを移植し、あたかもResultSet
オブジェクトのようにJdbcRowSet
オブジェクトを操作することができます。
JdbcRowSet
オブジェクトの作成JdbcRowSet
インタフェースのリファレンス実装、JdbcRowSetImpl
は、デフォルト・コンストラクタの実装を提供します。新しいインスタンスは、デフォルト値で初期化されます。その後、必要に応じて新しい値を設定できます。新しいインスタンスは、execute
メソッドが呼び出されるまで、実際には機能しません。通常、このメソッドは次の処理を行います。
PreparedStatement
オブジェクトを作成し、プレースホルダー・パラメータを設定する
ResultSet
オブジェクトを作成する文を実行する
execute
メソッドは、成功した場合、適切なprivate JdbcRowSet
フィールドに次の項目を設定します。
Connection
オブジェクト -- 行セットとデータベース間の接続
PreparedStatement
オブジェクト -- 結果セットを生成するクエリー
ResultSet
オブジェクト -- 行セットのコマンドによって生成された結果セット。この結果セットから、JavaBeansコンポーネントが生成される
execute
メソッドが正常に実行されなかったことになります。行セット上では、execute
とclose
以外のメソッドは呼び出せません。その他のpublicメソッドはすべて例外をスローします。
しかし、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
は、表TITLES
(書籍の種類は伝記文学)内のすべての行を含むResultSet
オブジェクトのthinラッパー、JdbcRowSetImpl
のインスタンスを表現するようになります。この時点で、jrs
上で呼び出される操作は、結果セット内の行(事実上のJavaBeansコンポーネント)に影響を及ぼします。
JdbcRowSet
リファレンス実装のRowSet
メソッドexecute
の実装は、CachedRowSet
™リファレンス実装内の実装とは異なっています。これは、RowSet
オブジェクトが接続されているかどうかによって要件が異なることを考慮した結果です。
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 には、ResultSet のConnection オブジェクトか、コンストラクタに渡されるJDBCプロパティが含まれます。 |
boolean |
getAutoCommit()
JdbcRowSet には、元のResultSet のConnection オブジェクトか、それに渡されるJDBCプロパティが含まれます。 |
RowSetWarning |
getRowSetWarnings()
この
JdbcRowSet オブジェクトに関する呼出しによって報告される最初の警告を取得します。 |
boolean |
getShowDeleted()
削除マークが付けられた行を現在の行とともに表示するかどうかを示す
boolean を取得します。 |
void |
rollback()
JdbcRowSet には、元のResultSet のConnection オブジェクトか、それに渡されるJDBCプロパティが含まれます。 |
void |
rollback(Savepoint s)
JdbcRowSet には、元のResultSet のConnection オブジェクトか、それに渡されるJDBCプロパティが含まれます。 |
void |
setAutoCommit(boolean autoCommit)
JdbcRowSet には、元のResultSet のConnection オブジェクトか、それに渡されるJDBCプロパティが含まれます。 |
void |
setShowDeleted(boolean b)
showDeleted プロパティに、指定されたboolean 値を設定します。 |
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
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
isWrapperFor, unwrap
getMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn
boolean getShowDeleted() throws SQLException
boolean
を取得します。true
が返された場合、削除行は現在の行とともに表示されます。false
が返された場合、削除行は現在の行のセット内に表示されません。デフォルト値はfalse
です。
標準行セット実装は、セキュリティ上の配慮または特定の配備シナリオに適合させるため、この動作を制限することができます。削除された行の可視性は実装によって定義され、標準の動作を表しません。
注: 削除された行を表示すると、一部の標準JDBC RowSet
実装メソッドの動作が複雑になります。しかし、削除された行を表示する機能は、非常に専門的なアプリケーションでしか使用されません。したがって、ほとんどの行セット・ユーザーは、この余分な詳細を無視してかまいません。
true
、そうでない場合はfalse
SQLException
- 行セット実装が、削除行が表示されたままになるかどうかを判断できない場合setShowDeleted(boolean)
void setShowDeleted(boolean b) throws SQLException
showDeleted
プロパティに、指定されたboolean
値を設定します。このプロパティにより、削除行を現在の行セット内に引き続き表示するかどうかが決定します。値がtrue
の場合、削除された行が現在の行セットとともに表示されます。値がfalse
の場合、削除された行は現在の行セット内に表示されません。
標準行セット実装は、セキュリティ上の配慮または特定の配備シナリオに適合させるため、この動作を制限することができます。これは定義済みの実装として残され、標準の動作を表しません。
b
- 削除された行を表示する場合はtrue
、そうでない場合はfalse
SQLException
- 行セット実装が、削除行の表示または非表示の設定をリセットできない場合getShowDeleted()
RowSetWarning getRowSetWarnings() throws SQLException
JdbcRowSet
オブジェクトに関する呼出しによって報告される最初の警告を取得します。JdbcRowSet
オブジェクト上に2番目の警告が報告された場合、この警告は最初の警告にチェーンされます。よって、2番目の警告は、最初の警告に対してRowSetWarning.getNextWarning
メソッドを呼び出すことで取得できます。このJdbcRowSet
オブジェクト上の後続の警告は、RowSetWarning.getNextWarning
メソッドによって返されるRowSetWarning
オブジェクトにチェーンされます。警告チェーンは、新しい行が読み込まれるたびに自動的にクリアされます。クローズ済のRowSet
オブジェクトでこのメソッドを呼び出すことはできません。そうした場合にはSQLException
がスローされます。
JdbcRowSet
オブジェクトは、常にデータ・ソースに接続されているので、アクティブなStatement
、Connection
、およびResultSet
インスタンスの存在に依存することができます。つまり、アプリケーションは、これらが提供するgetNextWarning
メソッドを呼びだすことで、追加のSQLWarning
通知を取得できることになります。CachedRowSet
オブジェクトなど、未接続のRowset
オブジェクトは、これらのgetNextWarning
メソッドにアクセスできません。
JdbcRowSet
オブジェクト上で報告された最初のRowSetWarning
オブジェクト。ない場合はnull
SQLException
- このメソッドがクローズされたJdbcRowSet
オブジェクトで呼び出された場合RowSetWarning
void commit() throws SQLException
JdbcRowSet
には、ResultSet
のConnection
オブジェクトか、コンストラクタに渡されるJDBCプロパティが含まれます。このメソッドは、Connection
コミット・メソッドをラップして、柔軟な自動コミットまたは非自動コミットのトランザクション制御サポートを提供します。
直前のコミット/ロールバック以降に行われた変更をすべて有効とし、このConnectionオブジェクトが現在保持するデータベース・ロックをすべて解除します。このメソッドは自動コミット・モードが無効になっているときしか使用できません。
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのJdbcRowSet
内のConnectionオブジェクトが自動コミット・モードである場合Connection.setAutoCommit(boolean)
boolean getAutoCommit() throws SQLException
JdbcRowSet
には、元のResultSet
のConnection
オブジェクトか、それに渡されるJDBCプロパティが含まれます。このメソッドは、Connection
のgetAutoCommit
メソッドをラップして、アプリケーションがJdbcRowSet
トランザクションの動作を確認できるようにします。
この接続の自動コミット・モードを指定された状態に設定します。接続が自動コミット・モードの場合、そのすべてのSQL文は実行され、個別のトランザクションとしてコミットされます。そうでない場合、そのSQL文は、commitメソッドまたはrollbackメソッドへの呼出しによって終了されるトランザクションにグループ化されます。デフォルトでは、新しい接続は自動コミット・モードです。
true
、そうでない場合はfalse
SQLException
- データベース・アクセス・エラーが発生した場合Connection.getAutoCommit()
void setAutoCommit(boolean autoCommit) throws SQLException
JdbcRowSet
には、元のResultSet
のConnection
オブジェクトか、それに渡されるJDBCプロパティが含まれます。このメソッドは、Connection
のgetAutoCommit
メソッドをラップして、アプリケーションがJdbcRowSet
トランザクションの動作を設定できるようにします。
このConnection
オブジェクトの現在の自動コミット・モードを設定します。
autoCommit
- 自動コミットを有効にする場合はtrue
、無効にする場合はfalse
SQLException
- データベース・アクセス・エラーが発生した場合Connection.setAutoCommit(boolean)
void rollback() throws SQLException
JdbcRowSet
には、元のResultSet
のConnection
オブジェクトか、それに渡されるJDBCプロパティが含まれます。現在のトランザクションにおけるすべての変更を取り消し、現在このConnection
オブジェクトが保持しているすべてのデータベース・ロックを解除します。このメソッドは自動コミット・モードが無効になっているときしか使用できません。SQLException
- データベース・アクセス・エラーが発生した場合、またはこのJdbcRowSet
内のConnection
オブジェクトが自動コミット・モードである場合。rollback(Savepoint)
void rollback(Savepoint s) throws SQLException
JdbcRowSet
には、元のResultSet
のConnection
オブジェクトか、それに渡されるJDBCプロパティが含まれます。現在のトランザクションから最後のsetSavepointまでのすべての変更を取り消し、現在このConnection
オブジェクトが保持しているすべてのデータベース・ロックを解除します。このメソッドは自動コミット・モードが無効になっているときしか使用できません。s
- ロールバック先となるSavepoint
SQLException
- データベース・アクセス・エラーが発生した場合、またはこのJdbcRowSet
内のConnection
オブジェクトが自動コミット・モードである場合。rollback()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.