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