Aktualizácia výkazy sa môže uviesť ako odstrániť/vložiť páry

Preklady článku Preklady článku
ID článku: 238254 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

SUHRN

Ak stĺpec, ktorý je súčasťou jedinečné obmedzenie aktualizovaná, potom SQL Server implementuje aktualizácie ako "odložené aktualizácia", ktoré prostriedkov ako dvojica ODSTRÁNIŤ/VLOŽIŤ operácie. Tento "odklad aktualizácia" spôsobuje replikácie poslať dvojica ODSTRÁNIŤ/VLOŽIŤ výkazy účastníkov. Existujú aj iné situácie ktoré môže spôsobiť odložené aktualizácia. Preto logika, že ste implementovať vo vašom AKTUALIZÁCIA Spúšťače alebo vlastné uložené procedúry na predplatiteľ by tiež zahrnú do ODSTRÁNIŤ/VLOŽIŤ Spúšťače alebo vlastné uložené procedúry.

DALSIE INFORMACIE

Predvolené správanie v obchodnej transakcii replikácie je použitie VLOŽIŤ, AKTUALIZÁCIA a ODSTRÁNIŤ vlastné uložené postupy, ktoré sa uplatnia zmeny na predplatiteľov.

VLOŽIŤ vyhlásenie at vydavateľ uplatňovali na účastníkov prostredníctvom VLOŽIŤ uložené volanie procedúry. Podobne, ODSTRÁNIŤ vyhlásenie sa uplatňuje prostredníctvom ODSTRÁNIŤ uložené volanie procedúry.

Avšak, keď AKTUALIZÁCIA výkaz je popravený ako "odložené aktualizácia", logreader agent umiestni pár ODSTRÁNIŤ/VLOŽIŤ uložené volania procedúr v databáze distribúcie uplatniť Účastníci skôr ako aktualizáciu uložené volanie procedúry. Napríklad, Predpokladajme, že máte publikovaním tabuľku s názvom Tabuľka1, tieto tri stĺpce:
  • stĺpci 1 int
  • col2 int
  • col3 varchar(30).
Len jedinečné obmedzenie na Tabuľka1 je definovaný v stĺpci 1 prostredníctvom primárne obmedzenie kľúč. Predpokladajme, že máte jeden záznam (1,1, "Dallas").

Keď spustíte tento kód:
UPDATE TABLE1 set col1 = 3 where col2 = 'Dallas'
				
V AKTUALIZÁCIA výkaz je implementovaný v SQL Server ako dvojica ODSTRÁNIŤ/VLOŽIŤ výkazy, pretože pri aktualizácii stĺpci 1, ktorá má jedinečný index definované. Teda, logreader miesta pár ODSTRÁNIŤ/VLOŽIŤ hovory v databáze distribúcie. To môže mať vplyv akékoľvek podnikanie logika, ktorá je prítomná v spúšťače alebo vlastné uložené procedúry na Predplatiteľ. By malo obsahovať doplnkovú pracovnú logiku v ODSTRÁNIŤ a VLOŽIŤ Spúšťače alebo uložené procedúry zvládnuť túto situáciu.

Ak uprednostňujete použitie jednotného logiky a chcete všetky vaše AKTUALIZÁCIA príkazy replikujú ako ODSTRÁNIŤ/VLOŽIŤ páry, môžete zapnúť stopových vlajkou ako je opísané v tejto spoločnosti Microsoft Článok databázy Knowledge Base:
160181 INF: Stopových vlajkou replikovať aktualizácia ako odstrániť/vložiť Pair
Navyše, ak používate horizontálnej filter v publikácii a ak aktualizovaný riadok nespĺňa filter podmienka iba ODSTRÁNIŤ volanie procedúry je posielaná predplatiteľom. Ak aktualizovaný riadok skôr nespĺňali podmienku filtra, ale spĺňa podmienky po aktualizovať iba VLOŽIŤ volanie procedúry sa odošle cez proces replikácie.

V predchádzajúcom príklade predpokladajme, že máte horizontálnej filtra definovaného na Tabuľka1: kde col2 = "Dallas". Ak spustíte tento kód:
UPDATE table1 set col2 = 'New York' where col1 = 3
				
logreader agenta iba miest ODSTRÁNIŤ uložené volanie procedúry uplatniť na účastníkov, od aktualizované riadok nespĺňa kritériá horizontálne filtra.

Teraz, ak ste spustiť tento kód:
UPDATE table1 set col2 = 'Dallas' where col1 = 3
				
logreader generuje iba VLOŽIŤ uložené volanie procedúry, pretože riadok skôr nespĺňali Podmienka filtra.

Hoci AKTUALIZÁCIA bola vykonaná operácia na vydavateľa, jediným vhodným príkazy aplikujú na účastníka.

ODKAZY

Pre SQL Server 2000 Service Pack 1 alebo novší, pozri nasledujúci článok v databáze Microsoft Knowledge Base:
302341 INF: Nová Trace Vlajka umožniť Singleton aktualizácia balíka Transakčná replikácie

Vlastnosti

ID článku: 238254 - Posledná kontrola: 23. októbra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL 2005 Server Workgroup
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL 2005 Server Enterprise
Kľúčové slová: 
kbinfo kbmt KB238254 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:238254

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com