Re: [Pgsql-ayuda] RV: function syb/pgsql

From: Alvaro Herrera Munoz <alvherre(at)dcc(dot)uchile(dot)cl>
To: sandrigo lezcano <psql(at)msa(dot)com(dot)py>
Cc: Manuel Sugawara <masm(at)fciencias(dot)unam(dot)mx>, Pgsql-ayuda <Pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx>
Subject: Re: [Pgsql-ayuda] RV: function syb/pgsql
Date: 2003-06-04 13:56:13
Message-ID: 20030604135613.GD22850@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Wed, Jun 04, 2003 at 08:26:01AM -0500, sandrigo lezcano wrote:
> ----- Original Message -----
> From: Manuel Sugawara
> > ?en la parte de declaraciones de la funci?n? o ?quieres crear un tipo
> > que sea un especie de alias para numeric(13,2)?; si es lo segundo
> > puedes usar algo como:
> >
> > create domain t_guaranies as numeric(13,2);
>
> mmm. puedo definir los checks tb
> dentro de los domain??? explico en sybase:
>
> t_estado_civil char check(@column in('1','2','3','4','5','6','7'))

No deberia ser necesario. Definele un constraint al dominio:

CREATE DOMAIN estado_civil AS "char"
CONSTRAINT check_estado_valido (CHECK VALUE in ('1', '2', ...))

Posteriormente cuando uses el dominio estados_civiles como tipo, slo
aceptar esos valores:
CREATE TABLE personas (
nombre text,
ecivil estado_civil
);

Permteme recomendarte que uses el tipo "char" (con las comillas incluidas)
en lugar de char (sin comillas), porque te ahorrars 4 bytes por cada
registro que contenga ese tipo (obviamente solo en casos como este donde
el campo en cuestion tiene un nmero limitado de posibles valores).

Suerte,

--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Find a bug in a program, and fix it, and the program will work today.
Show the program how to find and fix a bug, and the program
will work forever" (Oliver Silfridge)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Papa 2003-06-04 13:58:34 RE: [Pgsql-ayuda] referencias
Previous Message sandrigo lezcano 2003-06-04 13:48:32 RE: [Pgsql-ayuda] phpPgAdmin_2-4-2