LoginSignup
1
1

Accessのサニタイズでよく使う特殊文字のChr()一覧(改行コード、タブ、NULL終端文字列など)

Last updated at Posted at 2022-08-23

一覧

特殊文字 VBAの関数
ラインフィード(LF) Chr(10)
キャリッジリターン(CR) Chr(13)
CR+LF Chr(13) & Chr(10)
水平タブ Chr(9)
垂直タブ Chr(11)
バックスペース文字 Chr(8)
NULL終端文字列(NULL文字) Chr(0)
半角ダブルクオテーション Chr(34)
全角ダブルクオテーション Chr(33128)
ノーブレークスペース ChrW(160)

よく使うサニタイズSQLスニペット

-- AccessはNULLをReplace()に通すと例外になるので、まずNULLは空文字に。
UPDATE [テーブル名] SET [カラム名] = Nz([カラム名], '');

-- 改行除去。
-- CR+LFは下記2つを流せば消えるので、わざわざCR+LFをReplace()する必要は無い。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(10), '');
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(13), '');

-- タブ除去。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(9), '');
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(11), '');

-- バックスペース文字除去。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(8), '');

-- NULL終端文字列除去。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(0), '');

-- 半角ダブルクオテーションを全角ダブルクオテーションに。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], Chr(34), Chr(33128));

-- ノーブレークスペースを通常の半角スペースに。
UPDATE [テーブル名] SET [カラム名] = Replace([カラム名], ChrW(160), ' ');

バージョン

Windows 10 Pro 21H2 OSビルド 19044.1889
Microsoft Access for Microsoft 365 MSO (バージョン 2207 ビルド 16.0.15427.20166) 32 ビット

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1