Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Apakah Ada Mesin Basis Data yang Memungkinkan Batasan Bidang Kueri yang Ditentukan oleh RegEx?

Di Oracle, Anda dapat menentukan kendala khusus , di mana Anda dapat menggunakan fungsi yang mengevaluasi regexp; misalnya:

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

Anda bisa mendapatkan informasi tentang batasan yang Anda tetapkan dengan sesuatu seperti:

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. Nomor Oracle dan varchar bergabung

  2. Mematikan dan Memulai Instans Oracle

  3. RAWTONHEX() Fungsi di Oracle

  4. Prosedur Tersimpan Java Vs Prosedur Tersimpan PL/SQL

  5. Oracle TO_DATE tidak berfungsi