【问题标题】:Set timestamp column in DB2 table using SSIS使用 SSIS 在 DB2 表中设置时间戳列
【发布时间】:2018-12-19 06:49:09
【问题描述】:

我正在尝试在表达式生成器中创建一个更新命令表达式来更新时间戳字段。

@[User::FinalSQLPolicy] =  "UPDATE ZDBA.ACE_POLICY_XREF SET APX_ACE_POLICY_NBR= '"+ @[User::CNTRCTID] +"',APX_LAST_MAINT_TMSP=' GETDATE() '  where APX_PRS_POLICY_NBR='"+  @[User::APXPRSPOLICYNBR] +"'"

APX_LAST_MAINT_TMSP 是我要存储当前时间戳的字段。

我收到如下错误

无法计算表达式。

尝试解析表达式“”UPDATE ZDBA.ACE_POLICY_XREF SET APX_ACE_POLICY_NBR= '"+ @[用户::CNTRCTID] +"',APX_LAST_MAINT_TMSP='" GETDATE()" ' 其中 APX_PRS_POLICY_NBR='"+ @[User::APXPRSPOLICYNBR] +"'"" 失败。表达式可能包含无效标记、不完整标记或无效元素。它可能格式不正确, 或者可能缺少必需元素的一部分,例如括号。

谁能帮我纠正上面的表达方式?

【问题讨论】:

  • GetDate() 是一个有效的 DB2 函数吗?

标签: ssis timestamp db2 sql-update expression


【解决方案1】:

使用CURRENT_TIMESTAMP 函数,它等效于GETDATE() 的datetime 日期类型。 DB2 还具有 CURRENT_DATECURRENT_TIME 函数,它们分别返回当前日期 (YYYYMMDD) 和时间 (HHMMSS)。有关这些内容的更多详细信息,请参阅文档here

【讨论】:

    猜你喜欢
    • 2013-09-09
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    • 1970-01-01
    • 2014-10-15
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多