Symptômes
Depuis SQL Server 2019 CU6, la définition Créer une table externe a été étendue de Rejected_Row_Location paramètre. Cette valeur représente l’emplacement de la source de données externe dans laquelle les fichiers d’erreur et les lignes rejetés sont écrits. Cette option ne peut être utilisée qu’avec des tables externes à l’aide du format de fichier DELIMITEDTEXT sur des sources de données externes de type Hadoop.
CRÉER UNE TABLE EXTERNE [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 = VALUE
,REJECT_VALUE = 100
,REJECTED_ROW_LOCATION='/Reject_Directory'
)
Que se passe-t-il lorsque les données sont chargées ?
Lorsqu’un utilisateur exécute une table Créer une table sous forme de sélection (CTAS) dans le tableau précédent, PolyBase crée un annuaire sur la source de données externe au Rejected_Row_Location, le cas contraire. Un annuaire enfant est créé et nommé « _rejectedrows ». Le caractère de soulignement (_) permet de s’assurer que l’annuaire est échappé pour le traitement des données, sauf s’il porte un nom explicite dans le paramètre d’emplacement. Dans ce répertoire, un dossier est créé en fonction de l’heure de soumission de chargement au format YearMonthDay-HourMinuteSecond (par exemple, 20180330-173205). Dans ce dossier, deux types de fichiers sont écrits : _reason fichier de données et le fichier de données.
Le fichier de raison et le fichier de données ont tous deux l’ID de requête associé à l’instruction CTAS. Étant donné que les données et la raison se rapportent à des fichiers distincts, les fichiers correspondants ont un suffixe correspondant.
État
Microsoft a ajouté de nouvelles fonctionnalités répertoriées dans la section « S’applique à ».
Résolution
Ce problème est résolu dans la mise à jour cumulative suivante pour SQL Server :
À propos des mises à jour cumulatives SQL Server :
Chaque nouvelle mise à jour cumulative SQL Server contient tous les correctifs et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
Références
En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.