Accessの項目をnullに更新する方法について紹介します。
テーブル
下記は、Accessのテーブルを開いた状態です。
これをパッと見ただけでは、どこにnullが入っているのか空が入っているのかわかりません。
A5:SQL
この場合、A5:SQLというツールをダウンロードしてAccessに接続すれば
もう少しnullなのか空なのか視覚的に判別可能です。
→A5:SQLでAccessのテーブルを参照するとこのように確認できます。
nullに更新するクエリ作成
項目をnullに更新する更新クエリを作成してみたいと思います。
クエリデザイン>テーブル選択
→右クリックしてクエリの種類選択>更新クエリ
更新したい項目をドラッグしてレコードの更新に「null」と入力します。
これが更新する内容です。
次に条件を追加します。条件なしにするとこのテーブルの該当項目を全レコードnullにしてしまいます。
この例だと、顧客ID=”10000003″の顧客名をnullに更新します。
「Q_null更新」とクエリに名前を付けて保管します。
更新クエリ実行
「Q_null更新」を実行したいと思います。
Q_null更新をダブルクリックします
→ダイアログが表示されたら「はい」を押下します。
条件をもう1つ追加します。
顧客ID=”10000003″ or “10000001” に変更しました。
上書き保存してもう1度クエリを実行します。
→顧客ID=”10000003″ or “10000001”にnullが更新されました。
SQLビュー
なお、更新クエリをSQLビューで見ると下記のようになります。
UPDATE m_kokyaku SET m_kokyaku.kaisha_nm = Null WHERE (((m_kokyaku.kokyak_id)="10000001")) OR (((m_kokyaku.kokyak_id)="10000003"));
これをVBAで記述するともう少し応用を効かせることも可能です。
細かい条件指定をする場合は、VBAの方が便利だし確実となります。
NULL値か空か確認するクエリーを作成
さすがにnullなのか空なのかわかりにくいとやりにくいので
簡単に判定できるクエリを作成することも可能です。
式1: IIf(IsNull([kaisha_nm])=True,"NULL",IIf([kaisha_nm]="","空","それ以外"))
コメント