Skip site navigation (1) Skip section navigation (2)

Re: Ayuda con Check

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Marco Aurelio Sotelo Figueroa <masotelof(at)yahoo(dot)com(dot)mx>
Cc: Ayuda Postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda con Check
Date: 2005-04-28 03:25:52
Message-ID: 20050428032552.GA26819@dcc.uchile.cl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On Wed, Apr 27, 2005 at 09:17:03PM +0200, Marco Aurelio Sotelo Figueroa wrote:

Hola

> &nbsp;&nbsp;&nbsp; constraint pk_cliente primary key (id_cliente),<br>
> &nbsp;&nbsp;&nbsp; constraint chk_cliente_rfc check (rfc like
> '[A-Z][A-Z][A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][0-9][A-Z][A-Z][0-9]' or
> rfc like
> '[A-Z][A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][0-9][A-Z][A-Z][0-9]'),<br>
> &nbsp;&nbsp;&nbsp; constraint chk_cliente_curp check (curp like
> '[A-Z][A-Z][A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][0-9][H,M][A-Z][A-Z][A-Z][A-Z][A-Z][0-9][0-9]'),<br>
> &nbsp;&nbsp;&nbsp; constraint fk_cliente_ciudad foreign key (ciudad) references ciudad
> (id_ciudad));</font><br>

Hum, esas expresiones regulares parecen excepcionalmente mal construidas ...
por que no usan cuantificadores {M,N} ?  Es mucho mas limpio y facil de
leer.  Sobre todo, el uso de (rfc like expr1 OR rfc like expr2) donde
claramente podrias usar una sola expresion me parece, por decirlo de
algun modo suave, poco brillante.

Lo otro que me merece dudas es que tengas una clase de caracteres [H,M]
ahi ... no sera [H-M] ?  Si no entiendes a que me refiero, por favor
remitete al libro Mastering Regular Expressions que ya mencione o a tu
fuente favorita de iluminacion sobre regexes.

-- 
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Escucha y olvidarás; ve y recordarás; haz y entenderás" (Confucio)

In response to

  • Ayuda con Check at 2005-04-27 19:17:03 from Marco Aurelio Sotelo Figueroa

Responses

pgsql-es-ayuda by date

Next:From: ramirexDate: 2005-04-28 03:38:51
Subject: manejadores
Previous:From: Alvaro HerreraDate: 2005-04-27 23:59:08
Subject: Re: numeric vs real

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group