備考
使用方法の最初の書式では、現在の行のBookmark
プロパティを戻します。2番目の書式では、ダイナセット内の特定のレコードを参照するように、Bookmark
プロパティの位置を移動します。
Bookmark
オブジェクトは、ダイナセットが有効な間のみ存在し、特定のダイナセットに限定されます。これらのオブジェクトを複数のダイナセットで共有することはできません。ただし、ダイナセットとそのクローン間ではBookmark
オブジェクトを交換できます。
Bookmark
オブジェクトを使用する前に、そのダイナセットのBookMarkable
プロパティをチェックして、ダイナセットがブックマークをサポートしていることを確認してください。
例
この例では、Bookmark
プロパティを使用して、以前の既知レコードに迅速に戻る方法を示します。このコードをコピーして、フォームの定義セクションに貼り付けてください。次に[F5]を押します。
Sub Form_Load () 'Declare variables as OLE Objects. Dim OraClient As OraClient Dim OraSession As OraSession Dim OraDatabase As OraDatabase Dim OraDynaset As OraDynaset Dim Bookmark2 As String 'Create the OraSession Object. Set OraSession = CreateObject("OracleInProcServer.XOraSession") 'Get the client object. Set OraClient = OraSession.Client '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&) 'Move to the second record and display empno. OraDynaset.MoveNext MsgBox "Second Record, Employee #" & OraDynaset.Fields("EMPNO").value Bookmark2 = OraDynaset.Bookmark 'Move to the last record and display empno. OraDynaset.MoveLast MsgBox "Last Record, Employee #" & OraDynaset.Fields("EMPNO").value 'Move back to the second record using the bookmark. OraDynaset.Bookmark = Bookmark2 MsgBox "Second Record, Employee #" & OraDynaset.Fields("EMPNO").value End Sub