我在 BODS(SAP 数据服务)中有一个数据流,当我使用 Table_Comparison/Map_Operation 组合时,定义为 datetime2 的 SQL Server 列上的毫秒数将被删除。
当目标表由Map_Operation更新时,将删除 Datetime2 列中的毫秒数(即从 11:25:17.388000000 11:25:17.0000000000)。
作为测试,如果我使用 QueryTransformer 清除和填充目标表,时间戳列就可以了。
处理时间戳(日期时间 2)列时是否存在 BODS 错误? 我错过了什么吗?
谢谢
解决方案是将 QueryTransformer 放在 Table_Comparison 组件的前面。 在 QueryTransformer 中,专门将目标列数据类型从 varchar(27) 更改为时间戳。 我还在映射中提供了一个强制转换,以避免有关将数据转换为时间戳的警告。
如果您选择"排序输入"作为比较方法,则此 QueryTransformer 添加还需要对构成主键的列进行排序。 否则,您将收到一条消息,指出输入表未排序。