Firma Microsoft rozpowszechnia poprawki programu Microsoft SQL Server 2008 R2 z dodatkiem Service Pack 2 jako jednego pliku do pobrania. Ponieważ poprawki są kumulatywne, każdy nowy pakiet zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej wersji poprawki SQL Server 2008 R2 z dodatkiem Service Pack 2.
Symptomy
Rozpatrzmy następujący scenariusz:
-
Tabela partycjonowana używa kolumny typu DateTimeOffset jako kolumny partycjonowania w programie Microsoft SQL Server 2008 R2.
-
Kreator nowej publikacji służy do tworzenia publikacji migawki tabeli partycjonowanej w programie SQL Server Management Studio (SSMS).
W tym scenariuszu jest wyświetlany następujący komunikat o błędzie w jednym ze skryptów używanych do tworzenia publikacji typu migawka. Skrypty są generowane automatycznie przez Kreatora nowej publikacji.
Msg 102, poziom 15, stan 1, 3Incorrect wiersz w pobliżu "".
Uwaga Aby zapoznać się z szczegółowym przykładem scenariusza, w którym ten problem wystąpił, zapoznaj się z sekcją więcej informacji.
Rozwiązanie
Informacje o aktualizacji zbiorczej
Zbiorcza aktualizacja 5 dla programu SQL Server 2008 R2 z dodatkiem SP2
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 2008 R2 SP 2, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2797460 Pakiet aktualizacji zbiorczej 5 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji programu SQL Server 2008 R2 z dodatkiem SP 2. 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:
2730301 Kompilacja programu SQL Server 2008 R2 opublikowanych po wydaniu programu SQL Server 2008 R2 z dodatkiem Service Pack 2
Więcej informacji
Załóżmy, że funkcja partycji jest tworzona w programie SQL Server 2008 R2, a typ danych input_parameter_type to DateTimeOffset. Następnie użyj funkcji partycji skryptu, tak jak w programie SSMS. W tym scenariuszu występuje problem opisany w sekcji "Symptomy". Ponadto wartości zakresu Data-Literal generowane przez narzędzie SSMS nie są ujęte w cudzysłów pojedynczy. Na przykład w celu utworzenia funkcji partycji należy wykonać poniższą instrukcję:
CREATE PARTITION FUNCTION PF_TEST (datetimeoffset(7)) as range right for values('20100101', '20100201', '20100301')
Następnie kliknij prawym przyciskiem myszy pozycję partycji w Eksploratorze obiektów, wybierz pozycję funkcja partycji skryptu jako, wybierz pozycję Utwórz do, a następnie wybierz pozycję nowe okno edytora zapytań w oknie SSMS. Zobaczysz następujący wygenerowany skrypt:
CREATE PARTITION, funkcja [PF_TEST] (DateTimeOffset (7)) jako zakres od prawej do wartości (1/1/2010 12:00:00 AM + 00:00, 2/1/2010 12:00:00 AM + 00:00, 3/1/2010 12:00:00 AM + 00:00)Jeśli spróbujesz uruchomić wygenerowany skrypt, zostanie wyświetlony następujący komunikat o błędzie:
Msg 102, poziom 15, stan 1, 3Incorrect wiersza w pobliżu "12".
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".