アプリ版:「スタンプのみでお礼する」機能のリリースについて

SQL Server初心者です。
下記のことが可能かどうか教えてください。

現在、社内ASP Webシステムが10個くらいあります。
バックエンドデータベースとしてAccessを使用していますが、ファイルサイズが数十メガになってしまったものもあり、これらをすべてSQL Serverに移行しようと考えています。

Accessでは、複数のデータベースで共有したいテーブルがある場合、リンクテーブルとして共有できるため、これらのWebシステムでも社員情報テーブルをすべてリンクテーブルで共有しておりました。

SQL Serverに移行した場合、Accessのようにテーブルを共有することはできるのでしょうか?

ご教授のほどよろしくお願いします。

バージョン: SQL Server 2000

A 回答 (2件)

SQL Serverには、リンクサーバという機能があります。


おそらく、望んでおられる機能が実現できると思いますので、
調べてみてください。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
今回は複数のサーバーを使用しませんが、将来複数に分けて使用するようになった場合に、リンクサーバの機能を用いたいと思います。
ありがとうございました。

お礼日時:2009/08/11 17:49

可能ですが、SQL Serverのたて方次第で方法は変わります。


・1台のサーバにSQL Serverを1つだけインストールし、その中に全部のデータベースを作成する
・1台もしくは複数台のサーバにSQL Serverを複数インストールし、それぞれの中にデータベースを作成する

どちらの方法で移行するかはシステム要件次第&サーバの台数次第です。
1つのSQL Server内に全部のデータベースを作成すると管理は容易ですが、1つのSQL Serverにサービスはデータベースエンジンとしては1つなので、負荷も集中しますし、SQL Serverのサービスがダウンしたときには、すべてのシステムが利用不能になります。

それを避けなければならないニーズがあるときに複数のSQL Serverをインストールしてそれぞれで管理します。
サーバ1台に複数のSQL Serverをインストールすることもできますが、管理負担は増えますし、CPU・メモリはそれだけ余計に食います。

前者であれば話は簡単です。
サーバAにSQL Serverをインストールして、例えば「社員」データベースと「売上管理」データベースを作成したとすると、
「社員」データベースのアクセス権限さえ与えてやれば、「売上管理」データベースに対してSQLを投げるときに
SELECT * FROM 社員.dbo.社員マスタ
という形で参照できます。

後者の場合は、リンクサーバというものを設定します。
サーバAに「社員」データベース、サーバBに「売上管理」データベースがあるときに、サーバBに「サーバA」という名前でリンクサーバを設定しておけば、
SELECT * FROM [サーバA].社員.dbo.社員マスタ
という形で参照できます。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
弊社で準備できるサーバーは1台なので、前者になります。
お教えいただいた方法を試してみたところ、希望するデータを他のデータベースより取得することができました。
ありがとうございました。

お礼日時:2009/08/11 17:48

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