Objawy
Począwszy od SQL Server 2019 CU6, definicja Tworzenie tabeli zewnętrznej została rozszerzona o parametr Rejected_Row_Location. Ta wartość określa lokalizację w zewnętrznym źródle danych, w której zostaną zapisane wiersze błędów Files i Odrzucone. Tej opcji można używać tylko w przypadku tabel zewnętrznych korzystających z formatu pliku DELIMITEDTEXT w zewnętrznych źródłach danych typu Hadoop.
CREATE EXTERNAL TABLE [dbo]. [Reject_Example]
(
[Col_one] TINYINT NULL,
[Col_two] VARCHAR(100) NULL,
[Col_three] NUMERIC(2;2) NULL
)
WITH
(
DATA_SOURCE = EDS_Reject_Row
,LOCATION = '/Read_Directory'
,FILE_FORMAT = CSV
,REJECT_TYPE = WARTOŚĆ
,REJECT_VALUE = 100
,REJECTED_ROW_LOCATION='/Reject_Directory'
)
Co się dzieje podczas ładowania danych?
Gdy użytkownik uruchomi polecenie Utwórz tabelę jako zaznaczoną (CTAS) dla poprzedniej tabeli, oprogramowanie PolyBase utworzy katalog w zewnętrznym źródle danych w Rejected_Row_Location, jeśli takie nie istnieje. Zostanie utworzony katalog podrzędny o nazwie "_rejectedrows". Znak podkreślenia (_) zapewnia znak ucieczki katalogu dla innego przetwarzania danych, chyba że zostanie jawnie wymieniony w parametrze lokalizacji. W tym katalogu na podstawie czasu przesłania ładunku jest tworzony folder w formacie YearMonthDay-HourMinuteSecond (na przykład 20180330-173205). W tym folderze zapisywane są dwa typy plików: plik _reason i plik danych.
Zarówno plik przyczyny, jak i plik danych mają identyfikator zapytania skojarzony z instrukcją CTAS. Ponieważ dane i przyczyna znajdują się w osobnych plikach, odpowiadające im pliki mają zgodny sufiks.
Stan
Firma Microsoft dodała nowe funkcje wymienione w sekcji "Informacje zawarte w tym artykule dotyczą".
Rozwiązanie
Ten problem został rozwiązany w następującej aktualizacji zbiorczej dla programu SQL Server:
Informacje o aktualizacjach zbiorczych programu SQL Server:
Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:
Źródła informacji
Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.