我正在使用 Azure Synapse Analytics 使用以下 SQL 创建视图,上面的数据来自帐户表,并使用 D365 中的 Synapse 带来,并以 csv 格式在 Azure Synapse 中自动创建:
CREATE VIEW dbo.Account
AS
SELECT *
FROM
OPENROWSET(
BULK 'https://tvrcrmsynapsedatalake.dfs.core.windows.net/dataverse-yvrqa-unqfb7eeea818cc47be9935441a489da/account/*',
FORMAT = 'CSV',
PARSER_VERSION = '2.0',
FIELDTERMINATOR =',',
ROWTERMINATOR = '0x0a',
FIRSTROW = 1,
FIELDQUOTE = '"'
)
with (
[Id] uniqueidentifier 1,
[SINKCreatedon] DATETIME2(7) 2,
[StateCode] BIGINT 4,
[Name] VARCHAR(640) COLLATE Latin1_General_BIN2 134,
[primarycontactid] uniqueidentifier 63
)
AS [account]
Microsoft 文档说要使用 FIELDQUOTE 但我收到任何 DateTime2 字段的错误。 https://learn.microsoft.com/en-us/azure/synapse-analytics/sql/query-single-csv-file
错误信息: 从字节偏移量 0 开始的行的批量加载数据转换错误(指定代码页的类型不匹配或无效字符)。 .
如果我注释掉 [SINKCreatedon] 字段,我的视图可以很好地创建。但是我需要能够带回引号中的一些日期时间字段,有没有人遇到过这个问题并找到了解决方案?