Accessのデータを共有すると重くなるのを回避する方法

このQ&Aのポイント
  • Access2000におけるデータ共有時の重さを軽減する方法について教えてください。
  • LAN上で複数のPCからアクセスする場合に、Accessデータベースの起動時間が長くなる問題について相談です。
  • Accessのデータベースを別ファイルに分けて、データの読み込みを最適化する方法を教えてください。
回答を見る
  • ベストアンサー

Accessのデータを共有すると重くなるのを回避する方法

Access2000ですが、データテーブルを独立させ、 フォーム等ユーザーインターフェイスは、別のMDBファイルに作っています。 で、データが小さいシステムのときは感じなかったんですが、 データが大きいシステムを構築したら、LAN上で1つのプログラムからデータを参照していると、 他のPC上のプログラムを起動すると、画面表示まで時間がかかります。 表示してからは、動きは速くなるんですが、開くまでの時間がちょっと、長すぎます。 MDBファイル(Accessのデータベース)の特性で、リンクしているすべてのデータをPC上に読み込んでから、動くみたいなんですが、これとの関係でしょうか? 何か、起動を早くする方法はないでしょうか? わかる方、よろしく、お知恵を拝借したいと思います。 お願いいたします。

  • tiga-
  • お礼率77% (170/219)

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

  • ベストアンサー
  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

「ツール」→「オプション」で、'名前の自動修正情報をトラックする' にチェックが入っていれば、 そのチェックをはずしてから確認してみてください。

tiga-
質問者

お礼

ありがとうございます。 試して見ます。 お礼が遅れて申し訳ありません。 返事が入っていることに、気がつきませんでした。

関連するQ&A

  • Accessのデータ共有について

    現在社内の顧客管理システムをAccessにて構築しており、データテーブルファイル(mdb)をファイルサーバに置き、クライアントPCはフォームやクエリだけのmdbを使用してテーブルのリンクでデータ共有しています(Accessのデータ分割ツールにてテーブルとフォーム、クエリを分離しただけの状態で運用しています)。これまでは、この状態でも運用出来ていましたが、データ量が多くなるにつれ、段々動作が重くなってきた為、処理速度改善の為に、以下の二案を検討していますが、どちらの案が効果的なのでしょうか? 【案1】 クライアント用mdbファイルに同じテーブル構成の一時テーブルを作成し、mdbファイル起動時と、「更新」ボタンを別途作成し、「更新」ボタンが押下されたタイミングで、ファイルサーバのデータベースからADOにて一時テーブルに全データを読み込む。更新系の処理は、各クライアントの一時テーブルとファイルサーバのデータベースに対して行う。 【案2】 現状フォームの遷移については、 「DoCmd.OpenForm」関数の引数に検索条件を指定する方法で行っている為、この部分を ・ADOにてデータを取得  ↓ ・遷移後のフォームに値をセット と言った処理に変更する。 また、上記以外の方法で何か良い方法がありましたらご指摘頂ければと思いますので、よろしくお願いします。

  • データアクセスページなら回避できる?(共有)

    2台でmdbファイルを使用するため アクセスファイルを共有フォルダに入れ、フォームのみをローカルで利用したら すごく重くて使い物にはなりませんでした。 そこでデータアクセスページを使ってインターネットを利用すればこの現象は回避できるのでしょうか? よろしくお願いします。

  • Accessのテーブルデータ

    Visual Basicで作成したソフトでAccessのテーブルデータを呼び出せるようにしたいです。 mdb形式(Access)のファイルはデータベースエクスプローラに表示できるみたいですが、sqlのデータベースみたいにvisual studio上でデザイナ的に操作できるのでしょうか。 Form上でmdb形式のテーブルデータが扱えればよいのですが、もし必要なコードがあるのでしたら参考程度にアドバイスください。

  • データアクセスページへのクライアントからの参照について

    サーバー上にデータアクセスページを作成し、 クライアントから参照しようとしたところ 「Microsoft Office Webコンポーネントは、データベース'c:\Program Files\・・・・\mdb\AAA.mdb'に接続できません」というエラーメッセージが表示されます。 "AAA.mdb"はデータアクセスページで使用しているMDBとなっています。 状況はデータアクセスページのhtmファイルが置いてあるフォルダの配下にmdbファイルが置いてあります。 サーバー :Windows2003Serber Access2003 クライアント:WindpwsXP Office2003(Accessなし) なにか、原因を知っている方がいらっしゃいましたら 教えていただけませんでしょうか? 宜しくお願いいたします。

  • MS Accessを共有した際にファイルが壊れるのを回避する方法

    ちょっとしたツールをAccessで開発したいのですが、 Accessファイルを共有するとファイルが頻繁に壊れると伺いました。 そこで以下のような回避策を考えてみたのですが、 効果はありますでしょうか。 これでは、あまり意味がないとか、他に注意したほうが良い点等ありましたら、アドバイスいただければと思います。 なお、ツールは、50名位が使用(同時アクセスは3名~4名程度)予定で、 サーバ上にメインのmdbファイル(以下「サーバmdb」)を、各クライアントにもそれと連携するmdbファイル(以下「クライアントmdb」)を置くことを想定しています。 (1) データは全てサーバmdbで保持する。クライアントmdbには、入力用のフォームと、サーバmdbから取得したデータを一時的に保持するテンポラリのテーブルを持つ。 (2) クライアントmdbからサーバmdbにアクセスし、必要なデータをクライアントmdbにインポートする。 (3) クライアントmdbで、取り込んでデータをもとに、データの追加・修正を行い、当該データをサーバの所定のディレクトリにCSVで出力する (4) サーバmdbは、日次で、所定のディレクトに配置された、クライアントmdbから出力されたファイルを読み込み、データを更新する (5) (4)の読込み・更新作業中は、クライアントmdbからサーバmdbにはアクセスしない(外部ファイルで制御) 以上です。 要は、クライアントmdbが、直接サーバmdbを更新しないようにし、参照のみにするということです。 よろしくお願いします。

  • Accessを共有できません

    会社の共有サーバに、ワードやエクセルで作ったデータを保存して10人ほどの社員で使っています。(クライントPCはXPです) 同じようにAccessで簡単なデータベース(ファイル名.mdb)を作り、共有サーバに保存しましたが、どのクライアントPCからも開けません。 自分のPCでは開けました。これでは共有サーバの意味がありません。 Accessはワードやエクセルのようにはいかないのでしょうか?ご存知の方がいらしたら、お教えください。

  • Accessが共有できません

    会社の共有サーバに、ワードやエクセルで作ったデータを保存して10人ほどの社員で使っています。(クライントPCはXPです) 同じようにAccessで簡単なデータベース(ファイル名.mdb)を作り、共有サーバに保存しましたが、自分のPCも含め、どのクライアントPCからも開けません。 これでは共有サーバの意味がありません。 Accessはワードやエクセルのようにはいかないのでしょうか?ご存知の方がいらしたら、お教えください。

  • Accessで作成したデータアクセスページがブラウザで何も表示されないのですが…。

    独立した数台の端末からアクセスが可能なファイルサーバを用意し、 そのサーバ上で作成したデータアクセスページで簡易的な データベース検索システムを作りました。 作成した端末からであれば実行すると検索画面がブラウザに 表示されるのですが、他の端末から同じ操作を行っても、 ブラウザは起動するものの、検索フォームが表示されません またデータアクセスページからでなく、データベース自体を起動し、 その中からデータアクセスページを実行しても同じ挙動です。 何か制約があるものなのでしょうか? 情報が少なくて申し訳ありませんが、 Accessは初心者で何が問題か判断出来ません、 確認するポイントなど教えて頂けませんでしょうか?

  • Access2000で作ったmdbをAccess2003で使える?

    タイトル通りですが、 Access97で作ったmdbファイルをAccess2000に 「データベース変換」し使ってきたファイルを Access2003でも使えるでしょうか? また、Access2000で作ったファイルは何の問題もなくAccess2003で使えるでしょうか? 単純なmdbではなくイベントプロシージャーを多用して、ある程度まとまったプログラムになってます。

  • AccessのデータをSQLServerで

    SQLServerについては知識がないので、基本的な質問かもしれませんがお願いします。 現在、社内のシステムはAccess2003で通しています。 中小企業なのでクライアント数も15(全クライアントにAccessをインストール済み)ほどで、データ量は全部のmdbファイルで2GB程度です。 ただAccessではスタンドアロンになりがちで、複数のクライアントからの同時アクセスによるデータ更新ができにくい状況です。これについては、本来はやりたくないのですがmdbファイルを複数に分散したりして逃げています。(できれば1つのmdbファイルが理想です) また、mdbファイルの大きさやクライアントのPCスペックにもよると思いますが、Accessでの操作性がよくない(重い)です。 このような状況から考えて、自社のWindowsServer2003にSQLServer2005を導入の予定でいます。 そこで一番聞きたい質問なのですが、 「Accessで構築したmdbファイルを、SQLServerにデータを移すのみで問題はないのでしょうか」 どこへ移すのかとか、それができたとして、クライアントは今後どこから自社のシステムへアクセスしたらよいのかはまだ知識がないためまったくわかりません。。 ただ、SQLServerについての基本的なことはおさえておくつもりです。 なお、SQLServer2005を導入するのならば、無償版(Express)があるそうなのでそれで様子を見て、いろいろ不足するようでしたら上位版を考えています。

専門家に質問してみよう