
毎々お世話になっています。yayamamaともうします。
MSDE2000を使用してVisual Basic6.0でデータベースアプリを作成しています。接続はADO(MDAC2.7)です。
ローカルでMSDEに接続する場合と、他マシンからネットワーク経由で接続する場合で処理速度の差異が大きい場合があり、原因を調査しています。
2台のPCで使用するだけのアプリなので、一台をDBServer扱いしていますが2台とも単なるPCです。
OSは両方ともWindowsXPを使用し、ネットワークプロトコルはNetBEUIで、MSDE2000の接続は名前付きパイプで行っています。
接続の設定、あるいはネットワークに問題があるとは思っているのですが、有効な方法を見つけられないのが現状です。出来ましたらご教示お願いしたく投稿させて頂きました。
別のサイトで同じ様な現象があり、MDAC2.8にしたら解決したと言うのがありましたが、この場合、これは有効でしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
返事遅れました。
すみません。>遅くなる部分は3000件のデータを無条件で抽出する単純なselect文です。レコードセットオプジェクトのOPENメソッドでOPENするのに、Local端末では1秒ほど、ネットワークを介すると4秒ほどかかります。
本当に単純なSELECT文なら妥当かと思われます。
フィールド数がどのくらいかはわかりませんが、3000件ものデータを
ネットワーク上に流すならそれくらいはかかるでしょう
クライアントで3000件も受け取って何をしているのでしょう。
表示用ですか?画面に全て表示できないなら、データを小分けにしてその都度貰うようにしましょう。
クライアントのループで何か演算するのであれば、サーバー側で処理するようにします。
どうしても、一度で3000件ものデータを取り込むのであれば、速度を上げるのは難しいかもしれません。
No.1
- 回答日時:
NetBEUIで接続したことが無いので速度的にどうか?答えられませんが、一度TCP/IP等で接続してテストしてみてください。
どのプロトコルでもそうですが、ローカルに比べてネットワークを介すると遅くなるのは避けられません。
遅くなる部分は、どのような処理なのでしょうか?
処理が極端に遅い場合はたいていクライアント側で余計な処理を行っていることが多々見受けられます。
高速化する場合は、クライアント側は必要なコマンドをサーバーに送るだけにして、サーバー側で検索、抽出、演算を行い、
結果だけをクライアントに返すようにします。
ネットワーク越しに速度を上げるには、とりあえずネットワークに流れるデータ量を少なくすることが一番です。
見当違いであればごめんなさい。
この回答への補足
回答ありがとうございました。TCP/IPで接続を行ってみましたが、速度はかわらなかったです。
遅くなる部分は3000件のデータを無条件で抽出する単純なselect文です。レコードセットオプジェクトのOPENメソッドでOPENするのに、Local端末では1秒ほど、ネットワークを介すると4秒ほどかかります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- Wi-Fi・無線LAN 社用PCのWi-Fiがインターネット無しになる 5 2023/07/13 09:13
- ルーター・ネットワーク機器 2台のPCのネットワーク接続 1 2022/12/17 23:41
- ドライブ・ストレージ ネットワークHDD(NAS)について教えて下さい。 11 2023/03/08 11:15
- Wi-Fi・無線LAN aquos wishのパソコンへのテザリング設定 1 2023/02/08 12:13
- サーバー ネットワークの構成に困っています 3 2023/07/05 11:55
- ビデオカード・サウンドカード PCに接続したイヤフォンのマイクが使えません。 3 2022/10/22 11:07
- ルーター・ネットワーク機器 中継器とハブの設置について 3 2022/04/16 13:42
- ドライブ・ストレージ pcの外付けハードディスクの共有方法 4 2022/11/28 05:17
- ルーター・ネットワーク機器 二重ルーターでふたつのイーサネットに接続したい時は、pcieのイーサネットのやつを買ってきてそれとマ 3 2022/08/15 10:56
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSからのODBC接続のみ応答...
-
ACCESS VBAでサーバー起動して...
-
コンピュータ名の変更によってI...
-
MSDEの同時接続ユーザー制限
-
SQLで同じDBに対し2つのコネク...
-
Access から SQLserver に接続...
-
drop user できない。ORA-01940
-
別の所にある(グローバルIPが...
-
SQLSERVERへのODBC接続について
-
SQLクライアント設定
-
SQLServer,接続失敗時のエラー...
-
異なるドメイン間をODBC経由でD...
-
サーバー接続時、ホスト名はIP...
-
SQLのエラー(~付近に不適切な...
-
AccessのDAO.ExecuteとDoCmd.Ru...
-
Oracle 8i コンマ(,)を含むデ...
-
別サーバーのDB同士を結合する...
-
PostgreSqlでFunctionの作成に...
-
SQL Loaderを使いたい
-
オブジェクト名 '<table>' が無...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DB接続ができなくなって困って...
-
Access から SQLserver に接続...
-
ACCESSからのODBC接続のみ応答...
-
drop user できない。ORA-01940
-
SQLServer,接続失敗時のエラー...
-
SQLで同じDBに対し2つのコネク...
-
ACCESSからSQLServerのデータを...
-
別の所にある(グローバルIPが...
-
データベースのOPEN,CLOSEについて
-
SQLServer認証とWIndows認証
-
サーバー接続時、ホスト名はIP...
-
同一MDFファイルの共有について
-
DBに接続する時のオープンとク...
-
phpからsqlserverへの接続
-
SQL Serverの移行について
-
異なるドメイン間をODBC経由でD...
-
クライアントでの処理が遅い
-
ACCESS ODBC 接続ダイアログ 非...
-
ADOを利用したODBC、OLEDB経由...
-
VB6.0(SP6)でMySQLに接続したい
おすすめ情報