2016-12-07 4 views
0
SET IDENTITY_INSERT [Offline Server_name].[demo].[dbo].[Company] ON 
INSERT INTO [demo].[dbo].[Company](Id, Name) 
SELECT Id, Name 
FROM [Online server_name].[SmartDistributorToy].[dbo].[Company] 
SET identity_insert [demo].[dbo].[Company] OFF 

私が手にエラーがある:コピーデータ

それが存在しないため、オブジェクト「オフラインServer_name.demo.dbo.Company」を見つけることができませんかあなたはパーミッションを持っていません。

答えて

3

Offline_Server_Nameと名前のSQL Serverインスタンスは、SQLチュートリアルを参照してくださいあなたはcreating as Linked Server することにより、他のSQL Serverインスタンスをリンクすることができ、現在のSQL Serverインスタンス

に定義されるべきOnline_Server_name。 SQL Serverのリンクサーバー定義を作成した後、私はそれが問題

set identity_insert [db_currentserver].[dbo].[Company] on 

    insert into [db_currentserver].[dbo].[Company] 
     (
      Id, 
      Name 
     ) 
    select 
     Id, 
     Name 
    from 
     [LinkedServer].[db_remoteserver].[dbo].[Company] 

set identity_insert [db_currentserver].[dbo].[Company] off 
なしで動作し、以下を試みたときに、ローカルサーバーのデータベース・テーブル

にIDENTITY_INSERTを変更することができます

あなたは、SQLコードでエイリアスを使用することができます

db_currentserverは現在のインスタンスで作成されたデータベースです db_remoteserverは、現在のSQL Serverインスタンスにリンクサーバーとして定義されているリモートSQL Serverインスタンス上のデータベースです

+0

このクエリはworですオフラインのオフラインサーバーにキング – Arvind

+0

こんにちはArvind。 @大丈夫です。データベースを照会すると、これは接続を使用して行われます。各接続はSQL Serverの1つのインスタンスに制限されています。接続先のSQL Serverが別のものにリンクされている場合を除き(https://msdn.microsoft.com/en-GB/library/ms188279.aspx?f=255&MSPPError=-2147217396)オンラインまたはオフラインサーバーに対してこのクエリを実行していますか? –

+0

オブジェクト名 'Server_name.Passwor.database_name.dbo.Company'には、接頭辞の最大数を超えています。最大値は3です。このエラーはもう一度発生します – Arvind

関連する問題