プロが教えるわが家の防犯対策術!

Access初心者です。よろしくお願いします。
アクセス権が限られている2つのサーバーがあり、それぞれログインIDとパスワードが異なります。
営業部と営業推進部のような感じで似て非なる部署のサーバーですが、顧客リストを共有しなければならない仕事があるのでAccessでリンクさせたいと思っています。
質問は2つあります。
1つめ。既に試してみて無理っぽいのですが、Accessのテーブルリンク機能は異なるサーバー間では働かないのでしょうか。
検索フォームを作ってアクセスしてみましたが応答なしになりました。
2つめ。管理職なら両サーバーにアクセスできるので専用のPCを用意し、それぞれのサーバーにAccessファイルを用意したうえで適時、手動でデータの追加・更新をしたいのですが、追加クエリで差分を追加したときにレコードの順番が変わるのを防げないでしょうか。オートナンバーをキーにして両サーバーでオートナンバーをもとに管理したいです。
追加クエリでオートナンバーを昇順にして1件ずつレコード追加するのが近道かと思うのですが、いい方法があるでしょうか?
質問の意図がうまく伝わらないかもしれませんが、回答よろしくお願いします。

A 回答 (1件)

Microsft Access を会社で使っていた経験が数年ある者です。


基本的に Access はデスクトップアプリケーションとして設計されており、ネットワークを介して使用することは想定されていないはずです。
まして、サーバ間でのデータ同期といったようなことは、そもそも無理ではないかと思います。


 ◆

お使いの環境では、一般的な共有ファイルサーバ上に mdb ファイルなどを置いて使用されているのではないかと推測しています。こういった使用方法は、小規模なら何とかなるかもしれませんが、今後データ不整合やデータ破壊が起きても不思議ではないと思います。
コストや社内管理者などの条件を横において言えば、Microsoft SQL Server などのサーバ製品(データベースサーバ)を使用されるのがベストですし、そろそろ導入検討時期に来ているといってよいのかもしれません。

たとえば手元のコンピュータでサーバ上のデータベースファイル(mdbファイルなど)を開くと、そのファイルのすべての情報を、ネットワーク転送することになります。ファイルサイズが大きくなれば時間もかかりますし、何らかの通信エラーでデータが壊れたりするリスクも高まります。排他制御などもきちんとしていません。

ところがサーバ製品であれば、サーバとクライアントのネットワーク環境で、複数のユーザが同時利用することを想定しています。そのため、たとえば現在のようにデータベースの情報すべてを転送するのでなく、必要な部分のデータだけを転送するため、非常に軽いデータのやり取りで済みます。
同一データベースの異なる部分に、複数の人が同時に変更を加えたりすることも可能ですし、アクセスコントロールやバックアップの仕組みなどもしっかりしており、非常に柔軟に活用することができます。


 ◆

以上、今現在のお悩みは解決できていませんが、今後の社内システムの方向性について、研究・進言されてみることも、良いかもしれません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!