【问题标题】:How load varchar into date type in SQL Server using Informatica?如何使用 Informatica 将 varchar 加载到 SQL Server 中的日期类型中?
【发布时间】:2019-04-27 03:50:55
【问题描述】:

使用 IICS (Informatica Cloud) 在 SQL Server 2014 中将数据从一个表 (nvarchar) 移动到另一个表 (date) 时出错。我尝试使用表达式

To_date_out = To_date(Incep_Date, 'yyyy-mm-dd')

但仍然出现相同的错误:

TT_11019 端口 [Incep_Date] 出现错误:端口的默认值设置为:ERROR(Transformation error: IUpdateStrategyNode12)

【问题讨论】:

  • 在表达式中,您不进行赋值。只需输入to_date(incep_date, 'yyyy-mm-dd')。不需要to_date_out = 部分。
  • 另外,请确保您传入的 nvarchar 日期的格式与您指定的格式字符串 (yyyy-mm-dd) 完全相同。如果可能,这些来自某处的文本字段,则用户可能没有正确输入日期。
  • 谢谢 bitbangs。虽然我在这里显示了输出端口和表达式,但我只放了你提到的后者,即没有与作业。格式在数据类型为 nvarchar 的源表中显示为 YYYY-MM-DD 并且我尝试了所有不同的格式,修剪等 - 相同的错误。正如预期的那样,我验证它写入目标文件并成功写入 YYYY-MM-DD,但是当目标是另一个表时 - 它失败了。目标:Nvarchar -> 使用 Informatica 在 SQL Server 中的日期。
  • 查找错误消息 TT_11019。您似乎有一个string port linked to a date,您需要编辑会话级别的日期时间格式或更改您在表达式中所做的格式以匹配您的会话设置。
  • 是的-同样的帖子我想我昨天也查了。尝试根据会话更改格式,并在这里解决这样做时出现的错误。

标签: informatica informatica-powercenter


【解决方案1】:

我找到了答案。尽管会话和源数据采用不同(前)格式,但 Informatica 似乎隐式地将 YYYY-MM-DD 中的 varchar 转换为 YYYY/MM/DD。因此,在表达式中,我们需要转换为后一种格式作品! TO_DATE(起始日期,'YYYY-MM-DD')。感谢@bitbangs 的时间和帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多