Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle 11g - Einschränkung mit RegEx prüfen

Eine Check-Einschränkung folgt denselben Syntaxregeln wie Bedingungen für eine WHERE-Klausel:

alter table foo
  add constraint check_email 
  check (REGEXP_LIKE(email,'your_regex_goes_here','I')); 

Mehr Details im Handbuch:

  • für Oracle 11 – http://docs.oracle.com/cd/E11882_01/server.112/e41084/conditions007.htm#SQLRF52141
  • für Oracle 12 – https://docs.oracle.com/database/121/SQLRF/conditions007.htm#SQLRF52141

Bearbeiten:

Es gibt jedoch einige Einschränkungen hinsichtlich dessen, was Sie tatsächlich in einer Check-Einschränkung verwenden können:

  • Oracle 11 – http://docs.oracle.com/cd/E11882_01/server.112/e41084/clauses002.htm#SQLRF52205
  • Oracle 12 – https://docs.oracle.com/database/121/SQLRF/clauses002.htm#SQLRF52205