sql - 日期时间字符串必须匹配 ISO 8601 格式 - 在 azure 数据工厂管道 - 随机出错
问题描述
我们有选择语句:
SELECT *
FROM [dbo].[ActionCard]
WHERE [SinkModifiedOn] >= '@{formatDateTime(pipeline().parameters.windowStart, 'yyyy-MM-dd HH:mm' )}'
AND [SinkModifiedOn] <= '@{formatDateTime(pipeline().parameters.windowEnd, 'yyyy-MM-dd HH:mm' )}'
错误:
{
"errorCode": "InvalidTemplate",
"message": "In function 'formatDateTime', the value provided for date time string '@pipeline().parameters.windowStart' was not valid. The datetime string must match ISO 8601 format",
"failureType": "UserError",
"target": "Copy_ActionCardTest"
}
由于上述错误,数据工厂工作失败。
试过:
SELECT *
FROM [dbo].[ActionCard]
WHERE [SinkModifiedOn] >= '@{formatDateTime(pipeline().parameters.windowStart, 'YYYY-MM-DD HH:MM:SS.mmm' )}'
AND [SinkModifiedOn] <= '@{formatDateTime(pipeline().parameters.windowEnd, 'YYYY-MM-DD HH:MM:SS.mmm' )}'
与上述相同的错误。
SELECT *
FROM [dbo].[Contact]
WHERE cast(sinkModifiedON as Varchar) >= '@{formatDateTime(pipeline().parameters.windowStart, 'yyyy-MM-dd HH:mm' )}'
AND cast(sinkModifiedON as Varchar) <= '@{formatDateTime(pipeline().parameters.windowEnd, '-dd-MM-yyyy-HH-mm-ss-ffff' )}'
也从此查询中获得相同的错误。
解决方案
推荐阅读
- r - 通过 API 将 HubSpot 连接到 SQL Server
- mysql - mysql中带有交叉连接的UPDATE语句
- yii2 - Yii2 虚拟属性出 SqlDataProvider 的一个属性
- linker - 如何在命令提示符窗口中制作链接文件?
- jquery - 使用 jQuery “each” 来设置树的样式
- javascript - 将单个对象从 JSON 数组映射到新的 JSON 列表。
- c# - JustMock 同一界面的多个 Mocks
- c# - 如何使用鼠标悬停单击硒中的子菜单
- swift - 不带括号的可解码 swift 值
- json - 将“{}”主体解码为结构时,Golang 不会产生错误