ヘッダーをスキップ
Oracle® Objects for OLE開発者ガイド
11gリリース2 (11.2) for Microsoft Windows
B58887-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

EditOption(OraRef)プロパティ

説明

PIN操作でオブジェクトをロックするかどうかを指定します。

使用方法

edit_option = OraRef.EditOption
OraRef.EditOption = edit_option

引数

引数 説明
[in] [out] edit_option 編集オプションを表す整数

データ型

Integer

備考

このプロパティは、Ref値のPIN操作を行う前、つまり、OraRefオブジェクトで属性に初めてアクセスする前にコールしてください。PIN操作の直後にオブジェクトの属性が変更された場合は、このオプションが有効です。PIN操作でオブジェクト・インスタンスをロックすることで、Edit(OraRef)操作全体のデータベースへのラウンドトリップが抑制されます。

edit_optionに指定できる値は、次のとおりです。

定数 説明
ORAREF_NO_LOCK 1 データベースのオブジェクトをロックしません(デフォルト)。
ORAREF_EXCLUSIVE_LOCK 2 データベースのオブジェクトを排他ロックします。
ORAREF_NOWAIT_LOCK 3 待機なしオプションで、データベースのオブジェクトを排他ロックします。

次の例では、EditOptionプロパティの使用方法を示します。サンプル・コードを実行する前に、必要なデータ型と表がデータベース内にあることを確認してください。「OraObjectおよびOraRefの例で使用されているスキーマ・オブジェクト」を参照してください。

 
Dim OraSession as OraSession
Dim OraDatabase as OraDatabase
Dim OraDynaset as OraDynaset
Dim Person as OraRef

'Create the OraSession Object.
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
 
'Create the OraDatabase Object by opening a connection to Oracle.
Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger", 0&)
 
'create a dynaset object from customers
set OraDynaset = OraDatabase.CreateDynaset("select * from customers", 0&)
 
'retrieve a aperson column from customers. Here Value property of OraField object 
 
'returns Person OraRef
set Person = OraDynaset.Fields("aperson").Value
 
'set the ORAREF_EXCLUSIVE_LOCK EditOption on the Person object. 
Person.EditOption = ORAREF_EXCLUSIVE_LOCK 
 
'pin the Person Ref. This operation also locks the underlying 
'referenceable 'object in the server
MsgBox Person.Name

'call Edit method on Person OraRef. 
'This method does not make any network round-trip

Person.Edit
Person.Name = "Eric"
Person.Age = 35
Person.Update

関連項目:

Edit(OraRef)メソッド