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メソッドを利用して
高速にレコードの検索を行います。
|