• ベストアンサー

ACCESS97で作成したものをACCESS2002で開いた時について

ACCESS97で作成したものをACCESS2002(XP)で開いた時、変換すればそれなりに使えると思います。 この時、変換かけないで開いて閉じると、ファイルサイズが大きくなり、別のPCのACCESS97で「最適化」をかけても元のサイズに戻りません。 他に影響が出ないか心配です。何方かご存知の方お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#102878
noname#102878
回答No.1

影響はないと思います。 何しろ「Access97形式」なのですから。 ではなぜ97形式のファイルを2000/2002で開くと、同じ97形式のままなのにサイズが大きくなるのか。 あくまで予想ですが、「Access97には不必要だが、Access2000/2002では必要な情報が書き込まれた」ということではないでしょうか。 これも予想ですが、「2000/2002で開いたときにどうするか」という情報とか。 手元に97がないので確認できないのですが、以下のようなことをしてみました。(私が所有しているのはAccess2000です) ・2000形式のMDBを作成。(A.mdb) ・97形式に変換して別ファイルとして保存。(B.mdb) ・B.mdbを開き、変換せずに「データベースを開く」で開いた。 ・[ツール]-[オプション]の「表示」タブで「隠しオブジェクト」と「システムオブジェクト」にチェックを入れる。 ・A.mdbとB.mdbのテーブル一覧を比べてみる。 と、b.mdbのほうには「MSysModules」「MSysModules2」というシステムテーブルが追加されています。 この2つのテーブルは、B.mdbをAccess2000で初めて開いて「データベースを開く」を指定したときに追加されたものだと思います。 # この2つのテーブルの中身は開けませんでした。 Access97からすると、この2つのテーブルは不必要というか想定外のテーブルなので、Access97で開いても特にこのテーブルを読み込もうとしないので問題ない。 Access2000/2002にとっては必要なテーブルであり、テーブル内に書かれている情報を読み込んで動作を決定する。 といった感じじゃないかなぁ。

tanukiyama
質問者

お礼

ありがとうございます。 当初、サイズを見てぎょっとしました。 訳も無く八割増ぐらいになるとは考えられ無かったので、XPの余計な参照設定が(97から見て)入ってしまったのかと思いました。 もともと2000/2002で変換して正常に動くように97側で調整していました。しかし、実際に動かしてみて実害は無さそうでしたが、不安でした。

関連するQ&A