適用対象
説明
指定したダイナセットにコピー・バッファを保存します。
使用方法
oradynaset.Update oradynaset.DbUpdate
備考
Updateメソッドは、AddNewまたはEdit操作を完了して、そのセッションでBeginTrans操作が保留されていないかぎり、ただちに変更内容をデータベースにコミットします。
グローバル・トランザクション(つまり、BeginTrans操作が発行済)内のダイナセットの所定の行でUpdateメソッドをコールすると、CommitTransまたはRollbackメソッドをコールするまで、選択した行がロックされたままになります。
ミラー化されたデータ・イメージも更新されるため、データの参照および更新を続行するために問合せを再評価する必要はありません。ミラー・イメージの更新に使用するメソッドは、このダイナセットのOraDatabaseオブジェクトを作成したOpenDatabaseメソッドに渡されたオプション・フラグによって決まります。
このダイナセットがデータ・コントロールに付加されている場合、データ・コントロール・コードのValidateイベントで、必要に応じて、更新要求を取り消すことができます。更新が完了すると、ダイナセットに関連付けられているすべてのバインド済コントロールに更新内容が通知されるため、データの変更内容が自動的に反映されます。
例
この例では、AddNewおよびUpdateメソッドを使用して、ダイナセットに新規レコードを追加する方法を示します。このコードをコピーして、フォームの定義セクションに貼り付けてください。次に[F5]を押します。
Sub Form_Load ()
'Declare variables
Dim OraSession As OraSession
Dim OraDatabase As OraDatabase
Dim OraDynaset As OraDynaset
'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 the OraDynaset Object.
Set OraDynaset = OraDatabase.CreateDynaset("select * from emp", 0&)
'Begin an AddNew.
OraDynaset.AddNew
'Set the field(column) values.
OraDynaset.Fields("EMPNO").Value = "1000"
OraDynaset.Fields("ENAME").Value = "WILSON"
OraDynaset.Fields("JOB").Value = "SALESMAN"
OraDynaset.Fields("MGR").Value = "7698"
OraDynaset.Fields("HIREDATE").Value = "19-SEP-92"
OraDynaset.Fields("SAL").Value = 2000
OraDynaset.Fields("COMM").Value = 500
OraDynaset.Fields("DEPTNO").Value = 30
'End the AddNew and Update the dynaset.
OraDynaset.Update
End Sub