KB979212 — POPRAWKA: Wartość DateTime jest zastępowana wartością NULL, gdy konflikt jest rozwiązywany za pomocą niestandardowego rozpoznawania nazw w replikacji scalania w programie Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2

Dotyczy
Microsoft SQL Server 2005 Standard Edition Microsoft SQL Server 2005 Enterprise Edition Microsoft SQL Server 2005 Developer Edition Microsoft SQL Server 2005 Workgroup Edition Microsoft SQL Server 2005 Standard X64 Edition Microsoft SQL Server 2005 Enterprise X64 Edition SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Standard SQL Server 2008 Workgroup SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Workgroup

Firma Microsoft dystrybuuje poprawki dla programów Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2 jako jeden plik do pobrania. Ponieważ poprawki są zbiorcze, każda nowa wersja zawiera wszystkie poprawki i poprawki zabezpieczeń zawarte w poprzedniej wersji poprawki dla programu SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2.

Objawy

Rozważmy następujący scenariusz:

  • Replikację scalającą tworzy się w programie Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2.
  • Tworzysz niestandardowe narzędzie do rozpoznawania nazw, które służy do określania zwycięzców konfliktów po wykryciu konfliktów.
  • Masz kolumnę o typie danych Data/godzina.
  • Kolumna Data/godzina zawiera wartość NULL w jednej witrynie. Wartość w odpowiednim polu w innej witrynie nie jest wartością NULL DateTime. Jedna z tych witryn jest wydawcą, a druga witryną jest subskrybentem.
  • Wydawca i subskrybent zostają połączeni, a następnie następuje synchronizacja.

W tym scenariuszu niestandardowy program rozpoznawania nazw określa, że wartość NULL jest zwycięzcą konfliktu. Następnie niestandardowy program rozpoznawania nazw zastępuje wartość DateTime wartością NULL.

Przyczyna

Podczas operacji przekazywania program Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2 zastępuje wartość kolumny zgodnie ze stanem kolumny przy użyciu zestawu wyników niestandardowego programu rozpoznawania nazw. Jednak program Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2 nie resetuje poprawnie stanu kolumny.

Rozwiązanie

Informacje o aktualizacji zbiorczej

SQL Server 2005

Poprawkę rozwiązującą ten problem opublikowano po raz pierwszy w aktualizacji zbiorczej 9 dla dodatku Service Pack 3 dla programu SQL Server 2005. Aby uzyskać więcej informacji dotyczących tego pakietu aktualizacji skumulowanych, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

980176 Pakiet aktualizacji zbiorczej 9 dla dodatku Service Pack 3 SQL Server 2005Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń z poprzednich wersji SQL Server 2005. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

960598 Kompilacje SQL Server 2005 wydane po wydaniu dodatku Service Pack 3 SQL Server 2005
Poprawki programu Microsoft SQL Server 2005 są tworzone dla określonych dodatków Service Pack dla programu SQL Server. Należy zastosować poprawkę dodatku Service Pack 3 dla programu SQL Server 2005 do instalacji dodatku Service Pack 3 dla programu SQL Server 2005. Domyślnie każda poprawka dostępna w dodatku Service Pack dla programu SQL Server jest uwzględniona w następnym dodatku Service Pack dla programu SQL Server.

SQL Server 2008

Poprawkę rozwiązującą ten problem opublikowano po raz pierwszy w aktualizacji zbiorczej 9 dla dodatku Service Pack 1 dla programu SQL Server 2008. Aby uzyskać więcej informacji dotyczących tego pakietu aktualizacji skumulowanych, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2083921 aktualizacja zbiorcza 9 dla dodatku Service Pack 1 SQL Server 2008Uwaga Ponieważ te kompilacje są zbiorcze, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej wersji poprawki SQL Server 2008. Firma Microsoft zaleca rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

970365 Kompilacje SQL Server 2008 wydane po wydaniu dodatku Service Pack 1 SQL Server 2008 Poprawki Microsoft SQL Server 2008 są tworzone dla określonych SQL Server dodatków Service Pack. Należy zastosować poprawkę dodatku Service Pack 1 dla programu SQL Server 2008 do instalacji dodatku Service Pack 1 dla programu SQL Server 2008. Domyślnie każda poprawka dostępna w dodatku Service Pack dla programu SQL Server jest uwzględniona w następnym dodatku Service Pack dla programu SQL Server.

Dodatek Service Pack 2 dla programu SQL Server 2008

Poprawkę rozwiązującą ten problem opublikowano po raz pierwszy w aktualizacji zbiorczej 1 dla dodatku Service Pack 2 dla programu SQL Server 2008. Aby uzyskać więcej informacji dotyczących tego pakietu aktualizacji skumulowanych, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2289254 Aktualizacja zbiorcza 1 dla dodatku Service Pack 2 SQL Server 2008Uwaga Ponieważ te kompilacje mają charakter zbiorczy, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń z poprzednich wersji poprawek SQL Server 2008. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2402659 Kompilacje SQL Server 2008 wydane po wydaniu dodatku Service Pack 2 SQL Server 2008

SQL Server 2008 R2

Poprawka rozwiązująca ten problem została po raz pierwszy opublikowana w aktualizacji zbiorczej 3. Aby uzyskać więcej informacji dotyczących sposobu uzyskania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 R2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

2261464 Pakiet aktualizacji zbiorczej 3 dla systemu SQL Server 2008 R2Uwaga Ponieważ kompilacje są zbiorcze, każda nowa poprawka zawiera wszystkie poprawki i poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej wersji poprawki SQL Server 2008 R2. Zalecamy rozważenie zastosowania najnowszej wersji poprawki zawierającej tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

981356 Kompilacje SQL Server 2008 R2 wydane po wydaniu SQL Server 2008 R2

Stan

Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.

Źródła informacji

Aby uzyskać więcej informacji o sposobie wykrywania i rozwiązywania konfliktów przy użyciu replikacji scalającej, odwiedź następującą witrynę usługi MSDN (Microsoft Developer Network) w sieci Web:

Jak replikacje scalające wykrywają i rozwiązują konflikty Aby uzyskać informacje dotyczące modelu obsługi przyrostowej dla programu SQL Server, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

935897 Zespół SQL Server udostępnia model obsługi przyrostowej w celu dostarczania poprawek dla zgłoszonych problemów

  Aby uzyskać więcej informacji dotyczących sposobu uzyskiwania dodatku Service Pack 3 dla programu SQL Server 2005, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

913089
  Jak uzyskać najnowszy dodatek Service Pack dla programu SQL Server 2005
   Aby uzyskać więcej informacji o nowych funkcjach i ulepszeniach w dodatku Service Pack 3 dla programu SQL Server 2005, odwiedź następującą witrynę firmy Microsoft w sieci Web:

https://go.microsoft.com/fwlink/?linkid=131442
  Aby uzyskać więcej informacji dotyczących schematu nazewnictwa aktualizacji programu SQL Server, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

822499
  Nowy schemat nazewnictwa pakietów aktualizacji oprogramowania Microsoft SQL Server
   Aby uzyskać więcej informacji dotyczących terminologii związanej z aktualizacjami oprogramowania, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Baza wiedzy Microsoft Knowledge Base:

824684
  Opis standardowej terminologii używanej do opisywania aktualizacji oprogramowania firmy Microsoft