Как опустить квалификатор текста в экстракторе json/csv при вставке строк в ADLA?

У меня есть файл типа csv/json, и я пытаюсь вставить его в таблицу в ADLA. Но мой столбец данных выглядит как «Nike», который должен быть как Nike (без кавычек).

Я пробовал использовать "quoting:true", но это пока не позволяет пропустить textqualifier , например, сделать импорт в базу данных сервера sql.

Исходный файл

Пример кода

DECLARE @in  string = "/Samples/Data/UsqlTwo.csv";
DECLARE @out string = "/output/trckouttwo.csv";

 @CustData =
     EXTRACT CustomerUniqueID   int             ,
     CusLocationID              int             ,
     [PIM]                      int             ,
     AgeGender                  string          ,
     Mood                       string          ,
     StartDate                  DateTime        ,
     ImagePath                  string          ,
     EndDate                    DateTime        ,
     OutletName                 string          ,
     OutletStreet               string          ,
     OutletCity                 string          ,
     OutletState                string          ,
     OutletAreaCode             string          ,
     OutletCountry              string          ,
     Outletlandmark             string          ,
     OutletWeather              string          ,
     BrandName                  string          ,
     BrandStreet                string          ,
     BrandCity                  string          ,
     BrandState                 string          ,
     BrandAreaCode              string          ,
     BrandCountry               string          ,
     Brandlandmark              string          ,
     CamLocName                 string          ,
     CamAddress                 string          ,
     CamZone                    string          ,
     CamContactName             string          ,
     CamEmailID                 string          ,
     CamPhone                   string          ,
     CamNotloc                  string          ,
     CamNotZon                  string          ,
     CamNotContctName           string          ,
     CamNotPhone                string          ,
     CamNotEmailID              string          ,
     CamSMSNot                  string

     FROM @in
//     USING Extractors.Csv(skipFirstNRows:1);
USING Extractors.Csv(quoting:true);


@Branddetail= SELECT DISTINCT BrandName        

     FROM @CustData;



     INSERT INTO CLSTrackOMeter.dbo.Brand
(BrandId ,Name ,AddressId ,SuperAdminDetails )

SELECT 3 AS BrandId, BrandName,3 AS AddressId,"Admin" AS SuperAdminDetails FROM @Branddetail;

Результат в таблице введите здесь описание изображения

Ожидаемый результат должен быть указан без кавычек


person Harsimranjeet Singh    schedule 17.05.2017    source источник


Ответы (1)


Я думаю, что вы вывели свой файл без указания quoting : false в средстве вывода. Значение по умолчанию — true согласно документации, поэтому для строк будут отображаться кавычки, если вы явно не попросите их не делать этого.

Что касается кавычек, появляющихся в таблице, я не могу воспроизвести вашу проблему. quoting : true отлично работает и удаляет кавычки из файлов. Если вы затем выведете этот файл (что, я думаю, вы сделали, а не вставите его в таблицу в соответствии с вашим скриптом), просто укажите, что quoting:false удалит кавычки из выходного файла, например:

...
OUTPUT @output
TO "/output/output.csv"
USING Outputters.Csv(quoting:false);
person wBob    schedule 18.05.2017