複数のユーザーが同時にデータベースにデータを追加する場合や、データベースが重複をチェックするように設計されていない場合、重複データが忍び寄ることがよくあります。 大量の重複データを削除する場合には、クエリを使用する方が簡単です。 最初の手順は、データベース内の クエリで重複レコードを見つける ことです。
注
この記事で説明する方法は、 Access Web アプリには適用されません。
データを削除する前に
データの削除を元に戻すことはできないため、重複するレコードを削除する前に、データベースの準備が整っていることを確認してください。
- ファイルが読み取り専用でないことを確認します。
- データベースを他のユーザーと共有する場合は、データの競合を避けるために、操作するオブジェクトを閉じるように依頼します。
- データベースを排他モードで開くアクセス許可がある場合: [ファイル] >[開く ] をクリックし、データベースを選択します。 [ 開く] の横にある矢印をクリックし、[ 排他的開く] をクリックします。
- 最も重要なのは、 データベースを忘れずにバックアップすることです。 削除されたレコードを復元する唯一の方法は、バックアップから復元することです。 削除操作により、関連テーブルのレコードも削除される場合があります。
注
バックアップから復元するには、バックアップ コピーが元のバージョンの名前を使用できるように、元のファイルを閉じて名前を変更します。 バックアップ コピーに元のバージョンの名前を割り当て、Access で開きます。
削除クエリを作成して実行する
- [ 作成 ] タブ >クエリ デザイン ] をクリックし、レコードを削除するテーブルをダブルクリックします。
- アスタリスク (*) をダブルクリックして、すべてのテーブル フィールドをクエリ デザイナーに追加します。
- 削除するレコードの識別に使用するフィールドを追加します。 たとえば、ある顧客が廃業し、その顧客の保留中注文をすべて削除する必要があるとします。 これらのレコードだけを検索するには、デザイン グリッドに Customer ID フィールドと Order Date フィールドを追加します。
- [ 抽出条件] 行で抽出条件を追加することもできます。 たとえば、廃業した顧客の顧客 ID と、その顧客の注文が無効になる日付を追加できます。
- 各条件フィールドの [チェック ボックスを表示] をオフにします。
- [デザイン] タブの [実行] をクリックします。 削除するレコードがクエリによって返されることを確認します。
- [デザイン ビュー] をクリックし、[デザイン] タブで [削除] をクリックします。 Access によって選択クエリが削除クエリに変更され、デザイン グリッドの下部セクションで [ 表示 行] が非表示になり、[ 削除] 行が追加されます。
- 削除クエリを実行する前にもう 1 回確認を行います。[* (すべてのフィールド)] 列の [削除] 行に [開始] および [場所] が表示されることを確認します。
- [デザイン] タブで、[実行>はい] をクリックします。
詳細については、「 2 つのテーブルを比較し、一致しないレコードを見つける」を参照してください。