適用対象
説明
コレクションの要素をスキャンするイテレータを作成します。
使用方法
OraCollection.CreateIterator
備考
このメソッドは、Oracleコレクションの要素をスキャンするイテレータを作成します。イテレータを使用してコレクション要素にアクセスする方が、コレクションのインスタンスで索引を使用するより高速です。
例
例: OraCollectionイテレータ
次の例では、Oracleコレクション・イテレータの使用方法を示します。
サンプル・コードを実行する前に、必要なデータ型と表がデータベース内にあることを確認してください。「OraCollectionの例で使用されているスキーマ・オブジェクト」を参照してください。
Dim OraSession As OraSession
Dim OraDatabase As OraDatabase
Dim OraDynaset As OraDynaset
Dim CourseList As OraCollection
Dim Course As OraObject
'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 division
Set OraDynaset = OraDatabase.CreateDynaset("select courses from" & _
"division where name='History'", 0&)
'Retrieve a Courses column from Division.
Set CourseList = OraDynaset.Fields("Courses").Value
'Create the iterator
CourseList.CreateIterator
'Initialize the iterator to point to the beginning of a collection
CourseList.InitIterator
'Call IterNext to read CourseList until the end
While CourseList.EOC = False
Set Course = CourseList.ElementValue
course_no = Course.course_no
Title = Course.Title
Credits = Course.Credits
CourseList.IterNext
Wend
'Call IterPrev to read CourseList until the beginning
CourseList.IterPrev
While CourseList.BOC = False
Set Course = CourseList.ElementValue
course_no = Course.course_no
Title = Course.Title
Credits = Course.Credits
CourseList.IterPrev
Wend