From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Julio César León Cuya <irrealidad(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: herencia de llaves ? |
Date: | 2005-03-15 16:13:49 |
Message-ID: | 20050315161349.GA29671@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Mon, Mar 14, 2005 at 09:57:12PM -0500, Julio César León Cuya wrote:
Hola,
> Soy nuevo en la lista, y esta es mi primera experiencia con bases de datos.
Bienvenido. Espero que Postgres no te defraude.
> Como usuario de software libre que soy, decidí intentarlo con postgresql, y
> me gustó mucho. Sin embargo tengo problemas con un proyecto de manejo de
> datos médicos, espero no aburrirlos porque va para largo:
>
> Tengo cuatro tablas:
> create table p ( id serial, datos text ); -- la "p" es de pacientes
> create table hijo_d_p ( mas_datos text ); -- para pacientes de un proyecto
> create table a ( id_at serial, id int4 references p(id) default
> currval('p_id_seq'::text), otros_datos text ); -- "a" de atenciones
> create table hija_d_a ( aun_mas_datos text ); -- atenciones exclusivas del
> proyecto.
>
> Y cuando quiero insertar datos:
> begin;
> insert into hijo_d_p ( 'paciente1', 'del proyecto');
> insert into hija_d_a ( 'atencion1', 'del proyecto');
> commit;
Tu ejemplo esta incompleto; estas ultimas dos sentencias generan un
error de sintaxis. Y ciertamente falta algo.
> El detalle es que si elimino la herencia de la ecuación,
Cual herencia? En tus declaraciones no hay ninguna. En cualquier caso,
la herencia de tablas tiene problemas; no la uses.
No pongas ese currval() en el DEFAULT de una columna. Te va a causar
errores dificiles de detectar. Mejor, haz que la aplicacion obtenga el
currval() cuando ingrese un paciente y lo use al ingresar la atencion.
--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Escucha y olvidarás; ve y recordarás; haz y entenderás" (Confucio)
From | Date | Subject | |
---|---|---|---|
Next Message | Geiner Gamboa | 2005-03-15 17:00:30 | RE: Instalacion |
Previous Message | Oswaldo Hernández | 2005-03-15 15:51:15 | Re: Transaccion ID |