我有一个csv / json类型的文件,并尝试插入ADLA中的表。 但是我的数据栏看起来像" Nike",它应该像耐克(没有引号)。
我尝试使用" 引用:true "但到目前为止,这并不允许滑动textqualifier,就像导入到sql server数据库一样。
示例代码
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;
预期结果应该没有引号
答案 0 :(得分:1)
我认为您已输出文件而未在输出器中指定quoting : false
。根据{{3}},默认值为true
,因此除非您明确要求不使用字符串,否则系统会显示引号。
就表格中出现的报价而言,我无法重现您的问题。 quoting : true
效果非常好,会删除文件中的引号。如果然后输出该文件(我认为你已经完成了,不按照你的脚本将其插入表中),只需指定quoting:false
将从输出文件中删除引号,如下所示:
...
OUTPUT @output
TO "/output/output.csv"
USING Outputters.Csv(quoting:false);