• ベストアンサー

SQL Server2008でリンクサーバからテーブルを作成する方法

SQL Server2008で、リンクサーバからテーブル(属性も含み)作成を行うには どのようにするのでしょうか (リンクサーバの設定は行えましたが、SQL Serverの知識はほとんどありません・・・) into テーブル名 FROM リンクサーバ(テーブル) というので テーブル属性も含めてテーブルを作成できるとの記事はあったの ですが、クエリで実行してもエラーとなってしまいます。 SQL Server2008でSQLを発行するには特別な指定が必要なのでしょうか? (SQLを発行する場所が間違っているのかもですが) 初歩的な質問で申し訳ございません、よろしくお願いします

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

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.2

#1です。 >'-' 付近に不適切な構文があります。 >リンクサーバ名の最初の3文字の下に赤の波線がついています リンクサーバ名は「SQ_SERVER」であるといいつつも、エラーメッセージをみる限り明らかに「SQ-SERVER」と打っていますね。どちらが正しいのですか? アンダースコアでなく、ハイフンが含まれる場合は、 SELECT * FROM [SQ-SERVER].SALES.dbo.M_Kコード という風にかぎカッコで括ってください。

megumi85
質問者

お礼

jamshid6 さんありがとうございます リンクサーバ指定を[SQ-SERVER]にするとエラーが起きなくなりました。 初歩的な質問にも関らず、ご回答ありがとうございました

その他の回答 (1)

  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

SQL Server 2008が特殊な部分は何もないです。 そもそも、リンクサーバへのSELECT文が結果を返してくれますか? SELECT * FROM [リンクサーバ名].[データベース名].[スキーマ名].[テーブル名] 結果を返してくれるならば、以下のクエリも通るはずです(権限不足の場合を除く)。 SELECT * INTO [作成したいテーブル名] FROM [リンクサーバ名].[データベース名].[スキーマ名].[テーブル名] うまくいかないのであれば、エラーメッセージを書いてください。 ちなみに、フィールドの属性は反映されますが、主キーの情報などは反映されません。

megumi85
質問者

補足

ご返答ありがとうございます&返事が遅くなって申し訳ございません 、 SELECT 文の実行の際ですが下記のようなエラーとなってしまいます メッセージ 102、レベル 15、状態 1、行 1 '-' 付近に不適切な構文があります。 リンクサーバ名の最初の3文字の下に赤の波線がついています (リンクサーバ名/テーブル名 : SQ_SERVER.SALES.dbo.M_Kコード) ご指導よろしくお願いします

関連するQ&A