いつもお世話になっているグラフです。
環境はWinXP,VB6、Access2002、DAO使用です。
さて、タイトルにも書きましたが、
「サーバー上にあるデータベースにアクセスするアプリの作成」
を考えています。
そこで、ご意見などをご教授いただきたく思います。
ポイントは、「スピード」だと思います。
低速なネットワークの中で、
重たいデータベースに対してアクセスする
アプリの組み方のコツとかあるんでしょうか。
以上、よろしくお願いいたします。
単に「サーバー上」とだけ書かれても、接続形態などの
付加情報が一切無いので、答えようが無いような…。
Jet(MDB)へクライアントからアクセスすると、
クライアント側へMDBのデータ全部が読み込まれ、
クライアント側でSQL文が解釈されます。
そうならないように、
サーバ側でSQL文を解釈して、結果だけをクライアントに返す仕組みを考えます。
第一には、
MDB(Jet)を使わないこと です。
SQLServerやOracle、MySQLなどのRDBMSを使用すれば解決できます。
http://www.ruriplus.com/msaccess/Exp/exp0160.htm
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9911/packet/
もしくは、
サーバ側に、クライアントからのリクエストを受け付けて、
MDBを読んで結果だけをクライアントに返す独自のアプリケーション
を用意する というのも、ありえなくは無いですね。
> http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200703/07030079.txt
> の続き?あちらは解決?
さて、あちらには、まだ継続中です。
現在、データベースというものを勉強しようと思い、
2つの疑問点があったので、2つを個々に質問させていただきました。
> 単に「サーバー上」とだけ書かれても、接続形態などの
> 付加情報が一切無いので、答えようが無いような…。
場合によって、高速でつながる状態もあると思いますが、
低速てつながる状態もあるかと思います。
そこで、推奨とまでは、言わないにしても、
「このように、アプリを作成すべきだ!」
みたいな事をご教授願いたかったのです。
> Jet(MDB)へクライアントからアクセスすると、
> クライアント側へMDBのデータ全部が読み込まれ、
> クライアント側でSQL文が解釈されます。
> そうならないように、
> サーバ側でSQL文を解釈して、結果だけをクライアントに返す仕組みを考えます。
貴重な情報をありがとうございます。
懸念していた部分が、明確になりました。
Winsockなどを使用し、サーバー側で処理を行い、
クライアントに結果のみを返す機構を作ってみようと思います。
ということで、一応、解決にチェックをいれます。
もげさん。
早速、教えたいただいたURLを
勉強をすすめたいと思います。
| ツイート |
|