我正在尝试使用 SSIS 将数据从 chinook db(oracle) 移动到 chinook DW(mysql)。 目前在我的 oracle 数据库中,我有一个日期格式(07-AUG-11),并且想要,因为我需要放入 MYSQL(2011-08-07),但我无法做到这一点。
我尝试在oracle中使用它进行转换
select to_char(to_date(InvoiceDate,'DD-MON-YY'), 'YYYY-MM-DD') from CHINOOK.invoice;
并尝试在 SSIS 中使用表达式(从 to_char 开始),但没有成功。 (我还尝试了其他表达式,但 SSIS 抛出错误,表示该函数不存在)
我只需要知道SSIS中的表达式是什么。如果有人可以帮忙
最佳答案
我会将其作为日期带入 SSIS,使用(在 Oracle 中):
TO_DATE(InvoiceDate,'DD-MON-YY')
然后,如果您需要将其转换为“yyyy-MM-dd”格式的字符串,您可以使用类似的内容(在SSIS中):
(DT_WSTR, 4) YEAR(DateField) + "-" + RIGHT("0" + (DT_WSTR, 2) MONTH(DateField), 2) + "-" + RIGHT("0" + (DT_WSTR, 2) DAY(DateField), 2)
不过,如果您的目的地是日期字段,那么它应该直接进入而不进行任何处理/转换,因为它已经是日期了。
关于mysql - 更改 SSIS 中的日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46751177/