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