2011/4/6 Marcos Matamala <mar...@betazeta.com>:
>
> Yo usaría un esquema como el siguiente.
>
> CREATE TABLE person(id BIGSERIAL PRIMARY KEY, lastname varchar(68) NOT
> NULL UNIQUE);
> CREATE TABLE person_email(id BIGSERIAL PRIMARY KEY, email varchar(200)
> NOT NULL, person_id BIGINT REFERENCES person(id), UNIQUE(email,
> person_id));
>
>

Es decir que mantendrias dos índices unicos (el del PK y el del
UNIQUE) y como los dos campos del índice del UNIQUE son NOT NULL es
por definición candidato a PK... porque no poner como PK (email,
person_id) y mantener un solo índice?

-- 
Jaime Casanova         www.2ndQuadrant.com
Professional PostgreSQL: Soporte y capacitación de PostgreSQL
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a