8.3.39 setReadOnly(boolean readOnly)
(1) 機能
このConnectionオブジェクトを読み取り専用モードに設定します。トランザクションアクセスモードを設定します。
(2) 形式
public synchronized void setReadOnly(boolean readOnly) throws SQLException
(3) 引数
- boolean readOnly:
-
読み取り専用モードにする場合はtrueを,そうでない場合はfalseを指定します。
(4) 戻り値
なし。
(5) 発生する例外
次に示す場合にSQLExceptionが投入されます。
-
Connectionオブジェクトがクローズされている場合
-
トランザクションがすでに開始している場合
-
当該Connectionオブジェクトで,保持機能にHOLD_CURSORS_OVER_COMMITを指定して作成したResultSetオブジェクトがクローズされていない場合
(6) 留意事項
-
トランザクションアクセスモードは,次に示す優先順位に従って決定されます。番号が小さいほど優先順位が高くなります。1と2では1の指定が優先されます。
-
setReadOnlyメソッドで指定したトランザクションアクセスモード
-
システムプロパティのadb_clt_trn_access_modeで指定したトランザクションアクセスモード
-
DriverManagerクラスのgetConnectionメソッドの引数infoに指定したadb_clt_trn_access_modeプロパティの値
-
DriverManagerクラスのgetConnectionメソッドの引数urlに指定したadb_clt_trn_access_modeの値
-
-
setReadOnlyメソッドで指定したトランザクションアクセスモードは,Connectionオブジェクトをいったんプールしたあとに再使用した場合,前回のトランザクションアクセスモードを引き継ぎません。setReadOnlyメソッドを実行しないときと同じ状態になります。