DB2 v7r1中的REGEXP_LIKE(7.1?)

时间:2017-04-21 17:44:10

标签: db2 ibm-midrange db2-400

从,

https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/db2/rbafzregexp_like.htm

SELECT PID FROM PRODUCT 
 WHERE NOT REGEXP_LIKE(pid,'[0-9]{3}-[0-9]{3}-[0-9]{2}')

但是当我运行类似的命令时,

SELECT MYCOLUMN FROM MYTABLE 
 WHERE NOT REGEXP_LIKE(MYCOLUMN,'[0-9]{3}-[0-9]{3}-[0-9]{2}')

我得到了

  

SQL状态:42601供应商代码:-104消息:[SQL0104]令牌    无效。有效代币:< > =<> < =!< !> !=

     
    

=¬< ¬> ¬= IN。原因。 。 。 。 。 :在令牌处检测到语法错误。令牌不是有效的     令牌。有效令牌的部分列表是< > =<> < =!< !> !=> =¬<     ¬> ¬= IN。此列表假定该语句是正确的     令牌。该错误可能在语句中较早,但语法为     到目前为止,该声明似乎是有效的。恢复。 。 。 :     执行以下一项或多项操作并再次尝试请求: - 验证     令牌区域中的SQL语句。     纠正声明。错误可能是缺少逗号或     引号,它可能是拼写错误的单词,也可能是相关的     按照条款的顺序。      - 如果错误标记是,则更正SQL语句,因为它不以有效子句结束。

  

有什么理由说明这个例子不起作用? IBM v7r1与7.1不一样吗?

1 个答案:

答案 0 :(得分:2)

7.1和v7r1是一回事......

正则表达式支持作为技术更新(TR)级别9的一部分添加

从命令行,使用“使用PTF组(WRKPTFGRP)”命令

WRKPTFGRP PTFGRP(SF99707) PTFGRPLVL(*INSTALLED)

此外,您需要拥有5770-SS1选项#39国际组件的Unicode insallted。您可以使用显示软件资源(DSPSFWRSC)来检查它。

如果没有安装,您会看到一条消息:
SQL0204 - 未找到QSYS类型* SRVPGM中的QQQSVREG。