こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ローカルデータベースについて、質問なのですが。

ローカルデータベースについて、質問なのですが。

開発言語:VB2005で、サーバをたててクラサバのプログラムを作成しようと思うのですが。
現状は、サーバ1台に,クライアント2台(XP・7)ですが。将来的にはクライアントは40,50台まで増える予定

 サーバ機には、SQL Server2005を使い、クライアント機のローカルデータベース(ワークテーブル、一時テーブル)
を迷っているのですが


将来、クライアントが増設されるあたりを考えると、
・SQL serverを入れようか迷ったのですが。
40台でインストールとアップデートをするかと思うと後々管理が大変そう・・・
 
・ローカルデータベースがわりにテキストデータも考えましたが・・・
やっぱりプログラム作成の部分で大変そう。

・アクセスmdbを使い、ローカルデータベース代わりにと思ったのですが。
Accessが入ってない環境で試したことがないので、できるか未知数ですが。

ソフトのインストール自体は、フォルダごとXCOPYで設置するつもりなのですが。



規模によってマチマチかと思いますが。

台数が増えた場合を考慮した場合など。皆さんローカルデータベースはどうされているのでしょうか?
各パソコンに一々SQLserverをインストールされているのでしょうか?

アドバイスをもらえたら幸いです。

投稿日時 - 2010-07-26 18:25:06

QNo.6065906

すぐに回答ほしいです

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

一般的にはサーバーにSQLServerを入れるならそこに一本化するべきでしょう。
パフォーマンスにもそれほど問題はないと思います。

ローカルデータベースというのがどういう意味で使われているのかよくわかりませんが、PC側のAccessからまるでAccessのDBのように見える方法があります。(プロジェクトを作成しリンクする)
むしろこの方法のほうがSQLのマネージャより使いやすい。
(当然、SQLのマネージャでなければできないこともある)

投稿日時 - 2010-07-27 13:00:32

ANo.3

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

こんにちは。

ワークテーブルの生存期間にもよりますが・・・。
アプリから接続して一つのトランザクション内で完結するような処理をするうえで、途中にワークテーブルを利用したいなら、トランザクションごとのメモリーテーブルでもいいような気がします。
コネクションが切れたら勝手に消えるし、ゴミも残らない。
接続単位でユニーク(他のユーザーは使えない)ので、名前だけ気を付ければ十分使えるかと・・・。

恒久的にワークテーブルとして残したい(データも含めて)なら、普通に作るしかないですねぇ・・・。
PC単位というより、システムのログインユーザー単位とかになるんじゃないですかね?
ログイン処理が不要なアプリなら、クライアントプログラムごとにユニークなIDを持たせて(固定でもいい)、この単位で処理するとか・・・。

あるいはテーブルは分けないという考え方もあるかと思います。
データのプライマリーにユーザーIDや端末情報を埋め込めば、1テーブルで完結しますが・・・。

いずれにしてもワークテーブルを利用して、どのような処理が必要かが見えないので、なんとも言えませんねぇ・・・。

投稿日時 - 2010-07-27 14:10:19

ANo.2

こんにちは。

よくわからないんですが・・・、
売上ワークのようなワークテーブルもサーバー側で持ってしまっては?
クライアントで処理をさせなければならない理由が不明なんですが、DBはサーバーに一本化した方が、いろいろな意味でいいかと思います。

投稿日時 - 2010-07-27 10:09:36

補足

 やっぱりサーバのほうで完結したほうが良いですかぁ。
ワークテーブルの中でも区別したいのですが。これはPC-A用とPC-B用としたいのですが。
その場合、ワークテーブルの中身は同じでもテーブル名を変えればいいと思いますが。

taka451213さんはどうやって区別されてますか?
コンピュータ名。IPアドレス付きのテーブル名とかですかね。
異なるクライアントが共通のワークテーブルを利用する場合どのように区別してますか?

投稿日時 - 2010-07-27 12:53:57

ANo.1

こんにちは。

ローカルデータベースならクラサバじゃなくてクライアントプログラムでは?
とりあえずローカルデータベースの用途が不明ですが、どうしても必要ならMDBでいいんじゃないですかね?
ACCESSが100%入っている前提ですが・・・。

ローカルデータベースを使用しない方向では検討できないんですか?

投稿日時 - 2010-07-26 18:33:11

補足

ローカルデータベースの用途は、例えば、売上入力とかで、売上ワークにいったん入れて処理してから売上台帳に入れるような形です。やっぱりAccessが入ってないと駄目ですかねぇ・・・

投稿日時 - 2010-07-27 08:38:01

あなたにオススメの質問