プライマリ・コンテンツに移動
Oracle® Data Provider for .NET開発者ガイド
ODAC 12.2c リリース1 (12.2.0.1) for Microsoft Windows
E88311-03
目次へ移動
目次
索引へ移動
索引

前
次

Lock

このインスタンス・メソッドは、データベース内のREFをロックします。

宣言

// C#
public bool Lock(bool bWait);

パラメータ

  • bWait

    ロックがno-waitオプションに設定されるかどうかを指定します。bWaittrueに設定されている場合、このメソッドを呼び出してもREFがロックされるまで値は戻りません。

戻り値

ロックが取得されているかどうかを示すブール値。

例外

InvalidOperationException - 関連する接続がオープンされていません。

ObjectDisposedException - オブジェクトはすでに処理されています。

備考

OracleRefFlush起動またはFlushCacheメソッドの後に、アプリケーションで適切にREFのロックを解除するには、アプリケーションがトランザクションをコミットまたはロールバックする必要があります。このため、OracleRefオブジェクトのロックを起動する前に、OracleConnectionオブジェクトのBeginTransactionメソッドを明示的に実行する必要があります。

このインスタンス・メソッドは、ネットワーク・ラウンドトリップを作成して、データベース内のREFをロックします。このコールの後、プログラマは、関連した行オブジェクトの属性値を排他的に変更できます。OracleRefFlushインスタンス・メソッドまたはOracleConnectionFlushCacheメソッドへのコールにより、データベースへの変更がフラッシュされます。

trueが渡されると、ロックが取得されるまでこのメソッドはブロックされ、値を戻しません。結果として、戻り値は常にtrueになります。

falseが渡される場合は、このメソッドはただちに値を戻します。ロックが取得されると戻り値はtrueを示し、ロックが取得されない場合は、戻り値はfalseを示します。