【Access2016】SQLServerのリンクテーブルの内容が、突然#Deletedで表示されるようになった

Access

Access2016のアプリ使用中、突然「#Deleted」と表示されるようになったと連絡が入りました。
Accessで開発されたシステム上で発生し、SQLServerのテーブルをODBC経由でリンクしている模様。
該当PC調査前に事象を調べ、事前に原因や事象を収集してみます。
発生原因としてbigint型を使用しているという情報や、パススルーを使用すれば解決するという内容が多いようです。

障害の整理

まずは発生内容と発生状況の洗い出しを行ってみました。
・ほぼ同一環境で複数台のPCがあり、特定のPCのみ発生
・特定のテーブルやビューのみ「#Deleted」問題が発生
・昨日まで使用できていたのに突然「#Deleted」問題が発生→日々使用できないPCが増えてるイメージ
以上、なんとも矛盾した現状でした・・・
また、もともと全てのPCで動作していたので、前述のbigint型は未使用でした。
更にAccess2016を使用する前は、Access2003でも問題無く動作もしていたようです。

テーブルの状況

「#Deleted」表示のテーブルのデータを全削除し、手入力で1件だけ追加してもダメでした。
その後正常に表示されるテーブル数種類と「#Deleted」表示されるテーブル数種類について、テーブル構造をじーっとしばらく比較しながら眺めていました。
しばらくすると、これだ!という共通点を発見。

問題はnvarcharの主キーだった

主キーにnvarcharが含まれないものは正常に表示、含まれているものは「#Deleted」表示。
試しにnvarcharをvarcharにして新規テーブルで複製し、Access2016でODBC経由でリンク。
目論見通り、「#Deleted」は表示されません!

まとめ

なんとか問題は解決したのですが、
・なぜ特定のPCのみ「#Deleted」が発生したのか
・なぜタイミングによって1台ずつ「#Deleted」が発生するPCが増えていったのか
・なぜ未だに「#Deleted」が発生しないPCがあるのか
と疑問は残りますが・・・

今からnvarcharが主キーとなっているテーブルの作り直しと、データコピー作業を開始します!

コメント

  1. 補足メモ より:

    ●備考メモ「検索で来た人向け」

    1)Accessバージョン2205で「Deleted」問題発生。(この時は、2204にダウングレードすると臨時解決できた。)
    2)2022-07-13頃のパッチで、実行環境とバージョンの異なるファイルが開けなくなるという別の不具合が発生。
    3)2022-07-20頃の修正バージョン2206で「2」不具合が修正された。その際、なぜか「1」も直る。
    4)根本的な解決方法は、このページのようにデータ型の修正。(らしい)
    5)(今後)問題発生時には、yahooリアルタイム検索「access 不具合」「アクセス deleted」などと検索すると、たくさんの阿鼻叫喚の中に、(数時間すると)解決方法が書かれている事もある。

    ※別解など)『1)のダウングレード以外の手法』
    [ACCESS]#Deleted 問題
    https://www.tksoft.work/archives/5698

    MSAccessのSQLリンクテーブルが最近#Deleted表示になった場合、ODBCドライバを変えて接続してみる
    https://qiita.com/yuzukami1/items/c4ccb4b193f10f2a1f54

    【Access】いきなり酷いよ!Microsoft365使用しているパソコンだけリンクテーブル#Deleted接続エラー
    https://pctips.jp/pc-soft/microsoft365-access-deleted/

    ※情報)『2)3)の詳細』
    Accessアプリが開かない・強制終了する不具合。2022年7月13日のアップデートが原因/修正情報 [2022/7/20]
    https://www.nichepcgamer.com/archives/problem-that-access-application-cannot-be-opened-july-2022.html

    Error when trying to open an ACCDE/MDE file created in a different version of Access
    https://support.microsoft.com/en-us/topic/error-when-trying-to-open-an-accde-mde-file-created-in-a-different-version-of-access-f4cd36cd-549e-42ba-b75a-dfe964294a81

    • 禅(ZEN)@マルチエンジニア(管理者) より:

      補足情報の提供ありがとうございます!
      当ページを参照して頂いている方にも、有用な情報になると思います。

      今後とも、よろしくお願い致します。