Symptomy
Rozpatrzmy następujący scenariusz:
-
Replikację transakcyjną konfiguruje się na komputerze, na którym jest uruchomiony program Microsoft SQL Server 2012.
-
Aby zadzwonić do procedury składowanej sp_addpublication , należy ustawić właściwość allow_initialize_from_backup na N'TRUE '. Spowoduje to dodanie publikacji na wydawcy.
-
Możesz zadzwonić do procedury składowanej sp_addarticle , ustawiając typ właściwości N'proc tylko schematem. Spowoduje to dodanie do wydawcy artykułu z procedurą przechowywaną w schemacie.
-
Możesz zadzwonić do procedury składowanej sp_addarticle , aby dodać artykuł z tabeli. Spowoduje to zreplikowanie tabeli o nazwie "Tabela1" na wydawcy.
W tym scenariuszu w bazie danych subskrypcji nie są generowane procedury składowane sp_MSdel_Tabela1, sp_MSins_Tabela1i Sp_MSupd_Tabela1 . UwagaTen problem nie występuje, jeśli nie zostanie dodany artykuł z procedurą przechowywaną tylko w schemacie.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Zbiorcza aktualizacja 5 dla programu SQL Server 2012 z dodatkiem Service Pack 1
Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 5. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji dla programu SQL Server 2012 z dodatkiem Service Pack 1, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2861107 Pakiet aktualizacji zbiorczej 5 dla programu SQL Server 2012 z dodatkiem Service Pack 1Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej wersji poprawki do dodatku Service Pack 1 dla programu SQL Server 2012. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2772858 Kompilacje programu SQL Server 2012 wydane po opublikowaniu dodatku Service Pack 1 dla programu SQL Server 2012
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".
Obejście
Aby obejść ten problem, wykonaj następujące czynności:
-
Ustaw właściwość allow_initialize_from_backup na N'false ' po wykonaniu sp_addpublication.
-
Dodaj artykuł z tabeli do wydawcy.
-
Wykonaj procedurę przechowywaną sp_changepublication , ustawiając właściwość allow_initialize_from_backup na wartość true. Na przykład procedura składowana jest następująca:exec sp_changepublication@publication = N'$(PublicationName)',@property = N'allow_initialize_from_backup',@value = N'true'