https://lpgventures.com/rlc0o4k A um tempo atras tive que criar algumas check’s para bloquear palavras de um campo, hoje no lugar das dezenas de checks constraints que criei troquei todas por uma unica. Vou dar um exemplo simples mostrando como funciona e a expressao regular ajudou nesta questão. Exemplo: Bloquear o campo titulo da tabela gn_globo para que não receba referencias exatas da concorrencia nesta. A primeira idéia foi utilizar a função instr e minha check:
Rx Tramadol Onlinefollow link ALTER TABLE gn_globo ADD constraint glb_titulo_ban_sbt_ck CHECK ( instr(lower(titulo), 'sbt') = 0 ); ALTER TABLE gn_globo ADD constraint glb_titulo_ban_record_ck CHECK ( instr(lower(titulo), 'record') = 0); ALTER TABLE gn_globo ADD constraint glb_titulo_ban_redetv_ck CHECK ( instr(lower(titulo), 'redetv') = 0 ); SQL> INSERT INTO gn_globo VALUES (1,'TEste de Texto'); 1 row created. SQL> INSERT INTO gn_globo VALUES (2,'Teste do Sbt reporter'); INSERT INTO gn_globo VALUES (2,'Teste do Sbt reporter') * ERROR at line 1: ORA-02290: CHECK constraint (RAFA.GLB_TITULO_BAN_SBT_CK) violated SQL> INSERT INTO gn_globo VALUES (3,'Teste do reCord reporter'); INSERT INTO gn_globo VALUES (3,'Teste do reCord reporter') * ERROR at line 1: ORA-02290: CHECK constraint (RAFA.GLB_TITULO_BAN_RECORD_CK) violated SQL> INSERT INTO gn_globo VALUES (4,'Teste do RedeTV reporter'); INSERT INTO gn_globo VALUES (4,'Teste do RedeTV reporter') * ERROR at line 1: ORA-02290: CHECK constraint (RAFA.GLB_TITULO_BAN_REDETV_CK) violated SQL> INSERT INTO gn_globo VALUES (5,'Teste do gn_globo reporter'); 1 row created.
go site Ahhhh legal, assim tenho também como controlar a cada check.
Mas acabei encontrando uma forma melhor para construi-las e com muito mais elegante:
https://www.elevators.com/q0jfacyos
http://www.mscnantes.org/ql27pjqnu5bhttps://www.yolascafe.com/5egrush8 ALTER TABLE gn_globo DROP constraint glb_titulo_ban_sbt_ck; ALTER TABLE gn_globo DROP constraint glb_titulo_ban_record_ck; ALTER TABLE gn_globo DROP constraint glb_titulo_ban_redetv_ck; ALTER TABLE gn_globo ADD constraint glb_titulo_ban_ck CHECK ( NOT REGEXP_LIKE(titulo,'(sbt)|(record)|(redetv)' ,'i'));
https://getdarker.com/editorial/articles/6st3u9zqck5
https://www.mreavoice.org/xph85vq2fxnsee Assim tenho as 3 regras anteriores em uma unica regra simples e prática, utilizando expressão regular. Ref. REGEXP_LIKE Oracle Database Implementation of Regular Expressions
source site
Autor: Rafael Stoever
go site go here Bacharel em Sistema de Informação pela Uniasselvi, atualmente cursando Gerenciamento de Projetos em TI pela Pós Graduação Uniasselvi. Atuo como Analista de suporte Online Tramadol Mastercard a banco de dados – DBA pela Lumina Serviços em TI residente de Blumenau/ SC, https://dcinematools.com/s1bgs0w OPN Certified Specialist, Certificado OCP 10g/11g/12c, OCE RAC10g e Linux 10g. Conhecimentos em Microsoft SqlSever, Mysql e programação web (php,asp).
Paypal Tramadol watch
https://penielenv.com/jay0pxxm Bahhh interessantissimo utilizar Regex no oracle.
click hereDalhe “piazinho”