引数
このメソッドの引数は、次のとおりです。
引数 | 説明 |
---|---|
num_rows [オプション] |
取り出すレコードの数を表すInteger 。デフォルト値はダイナセット内の行全体の数です。 |
start [オプション] |
GetRows 操作を開始するダイナセットの開始位置を表すInteger 。デフォルト値はダイナセットの現在の位置です。 |
fields [オプション] |
単一のフィールド名、フィールド位置、フィールド名の配列またはフィールド位置番号の配列を表すVariant 。GetRows メソッドはこれらのフィールド内のデータのみを戻します。 |
備考
ダイナセットから2次元の配列にレコードをコピーするには、GetRows
メソッドを使用します。最初の添字はフィールドを識別し、2番目の添字は行番号を識別します。GetRows
メソッドがデータを戻すときに、Array
変数は自動的に適切なサイズに設定されます。
GetRows
メソッドのコールは、ダイナセット・オブジェクトの現在の行位置を変更しません。
例
次の例では、GetRows
メソッドを使用してデータを取り出します。
Dim OraSession As OraSession Dim OraDatabase As OraDatabase Dim OraDynaset As OraDynaset Dim row, col As Integer Dim fields() As String '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&) Set OraDynaset = OraDatabase.CreateDynaset("select * from emp", 0&) 'The following line executes GetRows to get all records data_array = OraDynaset.GetRows() 'Now display all the data in data_array For row = 0 To UBound(data_array, 2) For col = 0 To UBound(data_array, 1) Debug.Print data_array(col, row) Next col Next row 'The following lines execute GetRows to get the data from 'the ename and empno fields starting at 5 ReDim fields(2) fields(0) = "EMPNO" fields(1) = "ENAME" 'Execute GetRows data_array = OraDynaset.GetRows(, 5, fields) 'Now display all the data in data_array For row = 0 To UBound(data_array, 2) For col = 0 To UBound(data_array, 1) Debug.Print data_array(col, row) Next col Next row