Симптоми
Започвайки от SQL Server 2019 CU6, дефиницията за създаване на външна таблица е разширена, за да включва параметър на Rejected_Row_Location. Тази стойност представлява местоположението във външния източник на данни, в което ще бъдат записани Error Files и Rejected Rows. Тази опция може да се използва само с външни таблици, използващи файловия формат DELIMITEDTEXT на външни източници на данни от типа 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 = СТОЙНОСТ
,REJECT_VALUE = 100
,REJECTED_ROW_LOCATION='/Reject_Directory'
)
Какво се случва, когато данните се зареждат?
Когато потребител изпълни "Създаване на таблица като избор" (CTAS) на предишната таблица, PolyBase създава указател за външния източник на данни в Rejected_Row_Location, ако не съществува такъв. Създава се дъщерна директория с име "_rejectedrows". Знакът за подчертаване (_) гарантира, че указателят е прехвърлен за друга обработка на данни, освен ако не е изрично посочен в параметъра за местоположение. В тази директория се създава папка въз основа на часа на подаване на натоварването във формата YearMonthDay-HourMinuteSecond (например 20180330-173205). В тази папка се записват два типа файлове: _reason файлът и файлът с данни.
И файлът с причина, и файлът с данни имат queryID, свързан с командата CTAS. Тъй като данните и причината са в различни файлове, съответните файлове имат съвпадащ суфикс.
Състояние
Microsoft е добавил нови функции, които са изброени в раздела "Важи за".
Решение
Този проблем е решен в следната кумулативна актуализация за SQL Server:
За кумулативните актуализации за SQL Server:
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
Справки
Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.