Access。テーブルのデータを一括で簡単に削除したいけど、どうしたらいい?
<Access>
仕入データのテーブルなど、例えば、1年前のデータは削除したい場合は、条件に合致するように、抽出条件を設定した削除クエリを作成することで、削除することができますが、条件は関係なく、テーブルのデータを全部削除したい時には、どのようにしたらいいのでしょうか?データが少なければ、自分で選択して削除という方法もありますが、データ量が膨大の場合は、少々面倒な作業です。
次のテーブルがあります。
このデータをすべて削除する削除クエリを作ってきます。
作成タブのクエリデザインをクリックして、該当するテーブル「T仕入萎靡一覧削除」を選択します。
すべてのフィールドを設定したいのですが、フィールド数が多いと、設定するのが面倒です。
そこで、「*」を使うことで、全フィールドを設定したことと同じになります。
とても「*」は便利ですが、「*」フィールドには、抽出条件を設定することができないので注意が必要です。
要するに、抽出条件を付けたい場合は、個別にフィールドを設定する必要があるわけです。
ということで、話を戻しまして、「*」を、デザイングリッドに移動させます。
デザイングリッドの設定は、これだけですね。
条件は、全部削除したいわけですから不要です。
あとは、選択クエリから削除クエリに変更していきます。
それでは、実行しましょう。
該当するテーブル「T仕入萎靡一覧削除」のデータがすべて削除されていることを確認しましょう。
きちんと、テーブルのデータが削除されたことを確認できましたね。
この方法でも、全く問題はないのですが、実はもっと効率的に削除クエリを作成することができるので、そちらも併せて確認しておきましょう。
【デザイングリッドは何も設定しなくて大丈夫】
作成タブのクエリデザインで、該当するテーブル「T仕入萎靡一覧削除」を選択します。ここで通常ならばデザイングリッドにフィールドを設定していくのですが、全レコードを削除するだけならば、実は、このままで完成しちゃっています。
では、先程と同様に、選択クエリから削除クエリに変換して、実行してみましょう。
すると、なんと、削除を確認するメッセージが表示されました。
引き続き実行すると、削除されていることがわかります。
このように、テーブルのデータを無条件で削除したい場合には、デザイングリッドに何も設定しなくても大丈夫です。