最近、レコードセットは当初考えていたよりもはるかに単純な (あまり役に立たない) オブジェクトである可能性があることに気付きました。他の人が私の疑いを肯定または否定できるかどうかを確認しています. 説明させてください。2 つの DAO レコードセット オブジェクト (rstA と rstB など) を作成し、両方を同じテーブル (TableA など) に設定すると、次のようになります。
Set rstA = CurrentDb.OpenRecordset("TableA", dbOpenDynaset)
Set rstB = CurrentDb.OpenRecordset("TableA", dbOpenDynaset)
その後、彼らは自律的に行動しません。たとえば、 を使用してレコードを移動rstA.MoveNext
すると、rstB に対しても同じことが行われます。
当初、私はレコードセットを「本格的な」オブジェクトと考えていましたが、この動作は、レコードセットが単にテーブルへのポインターであることを示しています。したがって、テーブルは現在のレコードを示す独自のポインターを保持しています。これが、このポインターを rstA または rstB で移動すると、一方が他方に影響を与える理由です。
これは正しいですか、それとも単に何か間違ったことをしていますか?