【问题标题】:DB2 Replace issue?DB2 替换问题?
【发布时间】:2018-01-17 04:22:10
【问题描述】:

替换函数 -- REPLACE(REPLACE(REPLACE(T_DIM5,CHAR(13),' '),CHAR(10),' '),'|',' ') T_DIM5,

回车换行和列分隔符 是的,在 DB2 中不起作用..它正在替换实际字符

Oracle 运行良好。

【问题讨论】:

  • 您能否添加更多代码以及实际和预期结果?它不是按照您的预期或记录在案的吗?
  • 如果您的数据库位于 i 系列或 Z/OS 上,则验证表/列/表空间的 CCSID - 如果编码用于 EBCDIC,则您的代码无效。您还可以在替换前显示列中数据的 HEX 值,以验证您的假设。

标签: database db2 db2-400


【解决方案1】:

CHAR(13) & CHAR(10) 返回 '10' 和 '13'...

如果您尝试指定十六进制文字,请使用 x'13' 和 x'10'

但是请注意,数据可能在 EBCDIC 中。 EBCDIC 字符的十六进制代码不同于 ASCII。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 2018-06-10
    • 2013-09-09
    • 1970-01-01
    • 2014-06-12
    • 2013-03-24
    相关资源
    最近更新 更多