Recordsetオブジェクト(ADO)を使ってレコードを削除する
 Access2000に登場したADO(Microsoft ActiveXデータオブジェクト)を使って
レコードを削除する方法です。

● 詳細 ●

(1) ADOではコネクションというオブジェクトを使ってデータベースに接続します。
    カレントのデータベースを開くにもコネクションの指定が必要です。
   
(2) Recordsetオブジェクトを使うためには、まずオブジェクト変数の宣言を行い、
    次に宣言したオブジェクト変数にオブジェクトの参照を割り当てる処理が必要に
    なります。ここでは宣言と同時に新規オブジェクトへ参照を代入しています。
  

(3) カレントデータベースに接続します。

(4) 商品テーブルを参照して、編集可能なレコードセットを取得します。

(5) 検索に使用するインデックス名をRecordsetオブジェクトのIndexプロパティ
    に設定する

(6) 商品テーブルの中から商品番号が1234のレコードを検索します。

(7) レコードを削除するためにはdeleteメソッドを実行します。

(8) レコードセットを閉じます。

(9)  オブジェクト変数を削除します。

(10)データベースの接続を終了します。

(11)オブジェクト変数を削除します。

● サンプル ●

Private Sub 登録_Click()

  Dim cn  As ADODB.Connection
   Dim rs   As New ADODB.Recordset
          
   Set cn =  CurrentProject.Connection

   rs.Open "商品テーブル",cn,adOpenKeyset,adLockOptimistic,adCmdTableDirect
   
  rs.Index = "商品番号"
   rs.Seek 1234, adSeekFirstEQ 
                 
   rs.Delete
  
   rs.Close
   Set rs = Nothing
  cn.Close
   Set cn = Nothing

End Sub

■■ 注意 ■■

    Visual BasicでADOを利用するためにはデータベースにADOのライブラリーを
    追加する必要があります。
    Visual Basic Editorを起動してメニューバーの「ツール」-「参照設定」を選択し、
   「参照可能なライブラリファイル」の中に、Microsoft ActiveX DataObjects 2.1 Library
    にチェックがついていることを確認してください。
    通常 Access2000で新規作成すると上記ライブラリを含めた4つのライブラリが
    チェックされています。


    ADOではFind系のメソッドを利用してレコードを検索するか、Seekメソッドを利用して
    高速にレコードの検索を行います。

Access2000



戻る


Excel Word Access VBA! モーグ