• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:テーブルの参照方法)

テーブルの参照方法

このQ&Aのポイント
  • SQL Server 2005を使用している環境で、複数のサーバ間でテーブルを参照する方法について教えてください。
  • Windows Server 2003 SP1上にインストールされている2台のサーバ(サーバAとサーバB)があり、サーバAに存在するテーブルをサーバBからTSQLで参照したいです。
  • 参照するためには、サーバAとサーバBの間で必要な設定を行い、TSQLを使用してテーブルを参照することができます。具体的な手順について教えてください。

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

  • ベストアンサー
  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.2

リンクサーバを構築しないでもできますよ。 Management Studioから、リンク元のサーバを右Clickし、 サーバのプロパティを表示させます。 そこに、「接続」というタブがあるんで、 「このサーバへのリモート接続を許可する」をCheckONにしておく ことと、 SQL Serverをインストールすると、 [構成ツール]の配下に「SQL Server セキュリティ構成」もインストールされるので、「サービスと接続のセキュリティ構成」を 選んで、SQL Server 2005 Surface Area Configuration を 起動させます。 [リモート接続]というタブがあるので [ローカル接続および[リモート接続]を選択し、 適切なTCPプロトコルを設定し、適用させて、SQL Serverのサービスを 再起動すれば可能です。 細かい点としては、SQL Server Browser Serviceの有効化や SQL Serverのファイアウォール設定を行う必要があります。 詳しいことは、ご確認頂いていたサイトの日本語版が http://support.microsoft.com/kb/914277/ja-jp にもありますので、少しはわかりやすいかと思います。 なお、設定後のSQLアクセスは、 select * from [サーバAのサーバ名].[DB名].[スキーマ名(dbo等)].[テーブル名] で接続可能です。 よろしくお願いします。

参考URL:
http://support.microsoft.com/kb/914277/ja-jp
nao-k
質問者

お礼

お礼の書き込みが遅くなり、申し訳ございません。 いろいろと教えてくださり、ありがとうございます。 非常に助かりました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.1

もし、リンクサーバを立てられるのであれば、 サーバB上に、リンクサーバを立てちゃいましょう! (ただし、サーバAとサーバBがネットワーク上、同一セグメントにいればの話ですが) リンクサーバの立て方なんですが、Management Studioから [サーバーオブジェクト]->[リンクサーバ]というのがあるので 右Clickして、「新しいリンクサーバー」というのがありますので そこから作ります。 (リンク先(サーバA)のサーバ名かIPアドレスを入力し、 プロバイダには、VSEEなんとか というやつを選択します。 もし、サーバAとサーバBでパスワードや権限が違う場合は、 セキュリティタブで、リモートログインするユーザ名とパスワード を設定しましょう) ここまでできたら、サーバB上で、 select * from [サーバAのサーバ名].[DB名].[スキーマ名(dbo等)].[テーブル名] でアクセスすればOKです。 ※注意点は、[]できちんとサーバ名、DB名、スキーマ名、テーブル名は 必ず[]で囲っておくことです。 ※懸念点としては、リンクサーバはレスポンスは良くないので、  レスポンス重視のものを作っているのであれば  別の形(設計思想を変えるなど)した方がいいです。

nao-k
質問者

お礼

アドバイスありがとうございます。 (他の質問でもお世話になっております) リンクサーバーを構築すれば可能そうだということが判り、 下記をまずは簡単に眺めてみました。 http://technet.microsoft.com/ja-jp/library/ms188279.aspx http://technet.microsoft.com/ja-jp/library/ms190406.aspx http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=31792&forum=26&3 ちなみに、リンクサーバーを構築しないではできないのでしょうか? sqlcmdのオプション指定をみるとホスト名やインスタンスを指定 することもできるようなので何もせずに可能なのかな?と思っていましたが。 ただし、下記のようなこともあるようですが良く判ってはおりません。。 http://support.microsoft.com/kb/914277/en-us >(ただし、サーバAとサーバBがネットワーク上、同一セグメントにいればの話ですが) 同一セグメントにいます。

すると、全ての回答が全文表示されます。

関連するQ&A