web-dev-qa-db-ja.com

リンクサーバーテーブルに行を挿入するにはどうすればよいですか?

接続しているサーバーSourceServerがあり、リンクサーバーTargetServerがあります。

挿入ステートメントはどのようになりますか(リンクサーバー、データベース、名前空間、テーブルを参照する必要があります):

//Connected to [SourceServer]

USE [SourceDatabase]

DECLARE @HelloWorld NVARCHAR(255)

SELECT @HelloWorld = Name From dbo.Names where Id = 1

INSERT INTO [TargetServer].[TestDatabase].dbo.TestTable (Name)   VALUES (@HelloWorld)

このステートメントは例外を除いて実行されます。

Too many prefixes.

更新:上記の構文は正常に機能します。リンクサーバーへの接続に使用されるSQLユーザーのパスワードの有効期限が切れていました:)

7
BanditoBunny
INSERT INTO [TargetServer].[TestDatabase].[dbo].TestTable (Name)
SELECT Name From [SourceServer].[SourceDatabase].[dbo].[Names] where Id = 1
17
Control Freak
select * into [TargetServer].[TestDatabase].[dbo].TestTable
 From [SourceServer].[SourceDatabase].[dbo].[Names]
0
jai