将检查约束正则表达式添加到Oracle数据库中

问题描述 投票:0回答:1

我有一个应用程序,其中仅在用“。”之前插入了YYY / YY / YY或YYY.YY.YY之类的代码。

因此,以前的开发人员在我在TEST环境中删除的对应表中添加了一个约束,但是我想添加一个新约束

ALTER TABLE DEPLOYMENT_ADM.DEPLOYMENT 
  ADD CONSTRAINT deployment_chk_billing 
  CHECK (   BILLING_CODE LIKE '[0-9]{3}/[0-9]{2}/[0-9]{2}' 
         OR BILLING_CODE LIKE '[0-9]{3}\\.[0-9]{2}\\.[0-9]{2}');

但是当我尝试时我有

ORA-02293: cannot validate (DEPLOYMENT_ADM.DEPLOYMENT_CHK_BILLING) - check constraint violated

所以我看不出错误在哪里

我有一个应用程序,其中在仅带有“。”之前插入了代码YYY / YY / YY或YYY.YY.YY。因此,先前的开发人员在我放入TEST中的相应表中添加了一个约束...

sql regex oracle check-constraints
1个回答
1
投票

您要regexp_like()

© www.soinside.com 2019 - 2024. All rights reserved.