|
レコードセットを一度開くと、Move x、MoveFirst、MoveNext、MovePrevious および MoveLast を使用してデータ間を移動することができます。Move メソッドでは 1 つのパラメーターが必要です。このパラメーターは移動するレコード数を指します。負の数を指定すると、カーソルはレコードセットの後方に(最初のレコードに向かって)移動します。
新しいレコードを追加するには、AddNew メソッドを使用します。パラメーターは必要ありませんが、呼び出しの中でフィールドと値を指定することができます。カーソルは新たに追加されるレコードを指すので、移動することなく、直ちにそのフィールドへの更新を行うことができます。
メモ
Update または UpdateBatch を呼び出す前に、ヌル値を許可しないフィールドに対しては値を入れておく必要があります。
即時更新モードでは、空のレコードがデータ ストアに書き込まれ、フィールドへの更新がそのまま保存されます。バッチ更新モードでは、空のレコードを作成しますが、そのレコードは Update または UpdateBatch が呼び出されるまで書き込まれません。
rs.Open "Course", "Provider=PervasiveOLEDB;Data Source=Demodata", adOpenDynamic, adLockBatchOptimistic, adCmdTableDirect rs.AddNew rs!Field1 = 0 rs!Field2 = "TextValue" rs.UpdateBatch rs.Close
または
rs.Open "Course", "Provider=PervasiveOLEDB;Data Source=Demodata", adOpenDynamic, adLockBatchOptimistic, adCmdTableDirect rs.AddNew Array("Field1", "Field2"), Array(0, "TextValue") rs.UpdateBatch rs.Close
レコードを削除するには、Delete メソッドを使用します。オプション パラメーターが 1 つあります。このパラメーターは削除するレコードを指します。現在、Pervasive プロバイダーでサポートするのはデフォルトの adAffectCurrent のみです。
rs.Open "Course", "Provider=PervasiveOLEDB;Data Source=Demodata", adOpenDynamic, adLockOptimistic, adCmdTableDirect '削除するレコードへ移動する rs.Delete adAffectCurrent rs.Close
レコードを更新するには、適切なフィールドに、希望する値を割り当てた後で Update または UpdateBatch を呼び出します。
rs.Open "Course", "Provider=PervasiveOLEDB;Data Source=Demodata", adOpenDynamic, adLockBatchOptimistic, adCmdTableDirect '更新するレコードへ移動する rs!Field4 = "Changed text" rs.UpdateBatch rs.Close
|