informatica-powercenter - 如何解决信息 - 不是有效月份错误?
问题描述
运行使用 Oracle 数据库视图作为源的 PowerCenter 会话时,会话失败并出现以下错误之一:
ORA-01843: 不是一个有效的月份。
在 Sql 开发人员中,它运行没有任何问题
列:Report_date:数据类型:日期。
在映射参数变量中定义为字符串
使用参数文件和控制表动态传递报告日期
从 ABC 中选择 * 其中 report_date=to_char(31-MAR-21,'DD-MON-RR')
--错误:无效月份
你能建议一下吗
解决方案
您需要在 infa 映射参数周围加上单引号。像这样 -
首先计算 Report_Date 并将值以正确的格式放入 infa 参数文件中。您也可以使用控制表。但是您需要从中创建一个参数文件。参数文件应该看起来像
[folder.workflow.session]
$$Report_Date='21-Oct-2021'
然后在映射中,您可以在源限定符中将其称为 -
Select * from ABC Where report_date=to_char('$$Report_Date','DD-MON-RR')
单引号将确保您的数据作为字符串传递。
现在,如果您不想使用参数文件,您可以使用控制文件作为新的源,并与上面的 SQL 连接以获得所需的结果。但第一种方法更快。
推荐阅读
- selenium - 上传文件元素不可交互
- java - Spring AOP 未在 Spring Boot 2.1.6 应用程序中调用
- javascript - 如何从另一个页面获取导航器的 POST 数据
- regex - 双引号之间的换行符 \n 简单正则表达式
- c# - 获取 MacOS 文件夹/文件 ID C#
- angular - 如何从代码中选择角度材料选择选项
- html - 将 padding-box 与边框图像结合使用会在 Chrome 中添加不需要的细线
- flutter - 如何编写 onTap() 事件的语法以在颤动的动态 ListView 中动态定向到其他/新页面?
- javascript - 如何使用源映射调试本地 NPM 依赖项(使用`npm link`)?
- javascript - 具有偏移功能和特定格式“2019 年 10 月 31 日星期日”的 JavaScript 日期