Access

SQL Serverにリンク接続しているテーブルを開くと#Deletedと表示される

AccessでSQL Serverにリンクしているテーブルを開くとデータが存在するのに全て【#Deleted】と表示される??

今回の現象はSQL Serverのテーブル内にbigint型のフィールドがあったことが原因でした。

Accessの標準機能ではbigintをサポートしていないようです。

このため、リンクテーブルをテーブルデザインで参照すると、bigint型のフィールドの型がテキスト型となっていました。

現象の確認(マイクロソフト技術情報より)

マイクロソフト技術情報参照>>

記事内に対応方法が記載されていたので一部転載します。

大きい数値データ型を有効にする

既定では、大きい数値データ型は、リンクとインポートの操作に対して有効ではありません。ただし、Access の [リンク/インポートされたテーブルで大型の数値 (BigInt) データ型をサポート] オプションを設定すると、サポートを明示的に有効にすることができます。このオプションを設定しようとすると、データベースの互換性を保つ必要がある場合に、警告メッセージが通知されます。このオプションを設定すると、データベースは以前の Access のバージョンとの下位互換性がなくなります。

詳細については、「カレント データベースのユーザー オプションを設定する」と「下位互換性に関する考慮事項」を参照してください。

 

古いバージョンのAccessをお使いの場合、この「オプション設定」自体がない場合があります。(ちなみに2007にはありません。)

対応方法

SQL Serverのフィールド型を変更することが可能であれば変更して再リンクすれば問題ありません。

フィールド型を変更することが難しい場合、直接リンクテーブルを参照せず、パススルークエリーを使いましょう。

 

ABOUT ME
アズビーパートナーズ
アズビーパートナーズ
プログラマーと社内SEとしての経験を活かして、 情報システム部門のご相談を承ります。 得意な分野はAccessによる短納期開発、 BIツール(QlikSense/QlikView)の開発です。 現在はCMSを利用したホームページの作成にも力を入れています。
中小企業にこそ必要なセキュリティ対策

日々巧妙化する悪意ある攻撃。狙われるのは大企業だけではありません。

セキュリティ対策が追い付いていない中小企業は犯罪者の恰好の餌食です。

情報セキュリティ部門がない、詳しい人がいない…。

そんな時は全部まとめて外部委託して安心を手に入れる方法がベストです!

\セキュリティ対策をまとめて全部NTT西日本にお任せ!/


資料請求はこちらから