本件はフィードバッグハブやMSDNフォーラムにも報告がありますが進展がなく、2020年7月度のWindows Updateでも修正されませんでした。
現時点で判明している情報を報告します。
■条件
Windows 10 Ver.2004 (Ver.1909以前は発生しない)
.NET Framework 4系のVB/C#で開発 (.NET 3.5は発生しない)
DBにAccess、SQLServer LocalDBを使用 (おそらく他のDBでも発生)
テーブル項目名に濁音/半濁音のカタカナを含む (コード、フリガナ、グループ等)
項目名で引用する時の全角・半角を統一していないと発生します。
(1) テーブル側の項目名は全角/半角が不問
(2) SQL文でデータ取得時に全角/半角を変えても良い
(3) ただし取得データに対して項目名で引用する場合は、全角/半角を(2)に合わせないと「その名前の項目はない」エラーが発生
■対応
以下の方法がありますが、規模によっては相当な工数が必要です。
・データ項目名に合わせて取得・引用時の全角/半角を統一する
・項目名でなく列番号で引用する (例 DataReader変数(0)で1番目の項目を取得)
・データ項目名でカタカナの使用をやめる (いっそのこと英数に限定する)
・可能であれば発生しない開発環境、使用環境に変える (.NET3.5に変更、Windows 10 Ver.1909に戻す)
■影響
長年正常に動作していたソフトがOS新版で突然エラー終了するのは困ります。
あるはずの項目がないと警告され、利用者・開発者とも誤解と混乱を招きます。
「Windowsは全角/半角カタカナを区別しない」前提で開発した業務ソフトは多いです。
「濁音/半濁音を含めるとその限りではない」動作を仕様として固定されると困ります。
Ver.2004だけ発生するため、適用ユーザーが増える前に累積更新で直してほしいです。