From: | "Cristofer Reyes A(dot)" <crreyes(at)inf(dot)utfsm(dot)cl> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Problemas con primary key |
Date: | 2004-12-06 05:12:58 |
Message-ID: | 200412052113.03586.crreyes@inf.utfsm.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hola!
Les cuento que tengo problemas con la creacion de una clave primaria
compuesta; esta incluia 3 campos, dos de ellos referenciaban a otras dos
tablas. A una de estas tablas le agregue otro campo mas a la clave primaria,
por ende a la tabla que le hace referencia ( la que tiene problemas ) tambien
se lo agregue en la definicion de la clave primaria, quedando compuesta por
cuatro campos ahora; pero al momento de crear esta tabla me dice:
- -psql:sql/create.sql:100: NOTICE: CREATE TABLE / PRIMARY KEY will create
- -implicit index "etapas_paciente_pkey" for table "etapas_paciente"
- -psql:sql/create.sql:100: ERROR: there is no unique constraint matching given
- -keys for referenced table "etapa"
Donde etapa es la tabla a la que le agregue un campo mas a la clave primaria;
se me olvidaba decir que este ultimo campo es una referencia a otra tabla.
De todas maneras este es el codigo de la creacion de tablas que tengo:
CREATE TABLE etapa(
nombre_etapa varchar(20),
sala varchar(20) references sala(nombre) ON UPDATE CASCADE
ON DELETE SET NULL,
duracion timestamp(0) without time zone,
primary key(nombre_etapa,sala)
);
CREATE TABLE etapas_paciente(
nombre_etapa varchar(20) references etapa(nombre_etapa) ON UPDATE
CASCADE ON DELETE SET NULL,
sala varchar(20) references sala(nombre) ON UPDATE CASCADE
ON DELETE SET NULL,
rut_paciente varchar(10) references paciente(rut) ON UPDATE CASCADE
ON DELETE SET NULL,
hora timestamp(0) without time zone,
fecha date,
rut_tecnologo varchar(10) references tecnologo(rut) ON UPDATE
CASCADE ON DELETE SET NULL,
examen varchar(50) references
descripcion_examen(nombre_examen) ON UPDATE CASCADE ON DELETE SET NULL,
primary key(nombre_etapa,sala,rut_paciente,fecha)
);
Ojala alguien pueda ayudarme.
Saludos!
- --
Cristofer Reyes Aguilera linux-user #353991
http://www.inf.utfsm.cl/~crreyes
Laboratorio de Computacion, Departamento de Informatica, UTFSM
crreyes (at) inf (dot) utfsm (dot) cl
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFBs+pejvuTr7tY3e8RAqH3AJ4y3qn9z/yF+8LNCvYTww9orqXkNgCdEy9F
X4u1cnMqz1FUERpkaXUuXlI=
=Uruo
-----END PGP SIGNATURE-----
From | Date | Subject | |
---|---|---|---|
Next Message | Cristofer Reyes A. | 2004-12-06 05:19:21 | Re: Problemas con primary key |
Previous Message | mario | 2004-12-05 14:38:15 | Re: instalacion postgres para usarlo con php |