Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Có công cụ cơ sở dữ liệu nào cho phép ràng buộc trường có thể xác minh được chỉ định bởi RegEx không?

Trong Oracle, bạn có thể chỉ định ràng buộc tùy chỉnh , trong đó bạn có thể sử dụng các hàm đánh giá regexp ; ví dụ:

SQL> create table test_pattern ( txt varchar2(1000))
  2  /

Table created.

SQL> alter table test_pattern add constraint check_pattern check (regexp_instr(txt, '^START') != 0)
  2  /

Table altered.

SQL> insert into test_pattern values ('START a d f  g ')
  2  /

1 row created.

SQL> insert into test_pattern values ('_START a d f  g ')
  2  /
insert into test_pattern values ('_START a d f  g ')
*
ERROR at line 1:
ORA-02290: check constraint (SIUINTEGRA.CHECK_PATTERN) violated

Bạn có thể nhận được thông tin về các ràng buộc mà bạn đặt ra với những thứ như:

select *
from dba_constraints       
where table_name = 'TEST_PATTERN'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ngoại lệ Vi phạm Ràng buộc ORA-00001

  2. Cách chuyển đổi dữ liệu hàng đơn thành một cột trong oracle

  3. ORA-24247:truy cập mạng bị từ chối bởi danh sách kiểm soát truy cập (ACL) trong khi gửi email oracle

  4. Tương đương với MySQL's \ G trong Oracle's SQL * Plus

  5. Nhận kết quả hàng đầu cho từng nhóm (trong Oracle)