2010-01-19 101 views
0

这可能是SSIS中的一项简单任务,但对该工具几乎没有经验并且未能在文档中找到答案,所以我转向这里的专家。我很感激我可能得到的所有帮助。在SSIS中转换数据

我有一个SSIS包,它读取Excel电子表格的内容并将信息转储到数据库表中。这很简单。但是,电子表格中用于日期的列有时会在其中包含一个“0”零。如果该值为零,我需要将其转换为以下日期; '12/31/9999',并将该值保留在相应的列中。

我目前有一个数据流任务定义与Excel源和OLE DB目的地。我的假设是我需要在这两个任务之间进行数据流转换。我找不到想要工作的人。我使用的是SQL Server 2005和Visual Studio 2005的

感谢,

安德鲁

回答

3

我会假设你的Excel数据源有列设置为一个字符串。从那里你应该能够使用派生列转换。

它的语法有点棘手。这是我能够从头顶上想出来的。我会看看是否有相当于ISDATE()函数,因为这会比仅检查“0”更强大。

my_string=="0" ? (DT_DBDATE)"12/31/9999" : (DT_DBDATE)my_string 
+0

这对我有效。我无法在SSIS中找到ISDATE函数,比较字符串对于我的需求已经足够好了。谢谢。 – 2010-01-19 17:05:23

+0

我很高兴它有帮助。由于它看起来像你是新的,如果答案适合你,那么你应该接受它(点击答案旁边的复选标记以使其变成绿色),以便其他人可以快速找到问题的答案。 – 2010-01-19 18:21:17