Udfør indsættelser fra en trigger til en tabel på den linkede server - dårlig beslutning. Dette vil have stor indflydelse på indsætningsydelsen i kildetabellen ([dbo].[Tabel_1]), og der er også en distribueret transaktion, og konfiguration af servere til at understøtte distribuerede transaktioner - mareridt.
En mulig løsning er:
-
På kildeserveren kan du oprette en synkroniseringskøtabel. For eksempel:
CREATE TABLE dbo.SyncQueue ( QueueId INT IDENTITY(1,1), KeyForSync INT, -- Primary key value of record in dbo.SourceTable SyncStatus INT -- statuses can be: 0 - New, 1 - Synchronized, 2 - Error ) suppose you source table is CREATE TABLE dbo.SourceTable ( Key INT, -- primary key of the table Data varchar(xxx) )
-
Triger på dbo.SourceTable kan hurtigt indsætte i dbo.SyncQueue record Nøgle, som du skal synkronisere
- En eller anden periodisk udført lagret procedure kan derefter indsætte poster fra køen intable på den linkede server.