| Oracle® Data Provider for .NET開発者ガイド ODAC 12.2c リリース1 (12.2.0.1) for Microsoft Windows E88311-03 |
|
![]() 前 |
![]() 次 |
このインスタンス・メソッドは、データベース内のREFをロックします。
宣言
// C#
public bool Lock(bool bWait);
パラメータ
bWait
ロックがno-waitオプションに設定されるかどうかを指定します。bWaitがtrueに設定されている場合、このメソッドを呼び出してもREFがロックされるまで値は戻りません。
戻り値
ロックが取得されているかどうかを示すブール値。
例外
InvalidOperationException - 関連する接続がオープンされていません。
ObjectDisposedException - オブジェクトはすでに処理されています。
備考
OracleRefのFlush起動またはFlushCacheメソッドの後に、アプリケーションで適切にREFのロックを解除するには、アプリケーションがトランザクションをコミットまたはロールバックする必要があります。このため、OracleRefオブジェクトのロックを起動する前に、OracleConnectionオブジェクトのBeginTransactionメソッドを明示的に実行する必要があります。
このインスタンス・メソッドは、ネットワーク・ラウンドトリップを作成して、データベース内のREFをロックします。このコールの後、プログラマは、関連した行オブジェクトの属性値を排他的に変更できます。OracleRefのFlushインスタンス・メソッドまたはOracleConnectionのFlushCacheメソッドへのコールにより、データベースへの変更がフラッシュされます。
trueが渡されると、ロックが取得されるまでこのメソッドはブロックされ、値を戻しません。結果として、戻り値は常にtrueになります。
falseが渡される場合は、このメソッドはただちに値を戻します。ロックが取得されると戻り値はtrueを示し、ロックが取得されない場合は、戻り値はfalseを示します。