Primeiramente,

desculpe a todos, por estar fazendo esta pergunta aqui, provavelmente esse
pergunta ja foi feita antes e ja foi respondida, mas no dia em que procurei,
os links: http://pgdocptbr.wiki.sourceforge.net/ ,
http://www.nabble.com/PostgreSQL---Brasil-f15652.html não estavam me levando
ao lugar onde poderia procurar sobre o assunto.

Vamos a duvida:

O Contexto:

*Tenho uma tabela "Pessoa",

*Tenho outra tabela "Medico" que herda de "Pessoa"  e tem como chave
primaria a chave primaria de "Pessoa",

*e outra tabela "Paciente", que herda de "Pessoa",  tem como chave primaria
a chave primaria de "Pessoa".

*Cadastrei um "Medico" chamado João, ao fazer isso, automaticamento uma nova
"Pessoa" é adicionada na tabela "Pessoa".

*Agora o medico "João" ficou doente, entao terei que cadastrar "João" como
"Paciente", automaticamento uma nova "Pessoa" é adicionada na tabela
"Pessoa".

*So que fazendo isso, resultará em duplicidade na tabela "Pessoa".

A duvida:

Como posso resolver o problema de duplicidade na tabela "Pessoa", utilizando
os conceitos de banco de dados Objeto-relacional?

Consultei meu professor de BD, mas ele não tem experiencia com banco de
dados Objeto-Relacional, entao não soube como responder.

Alguem sugere uma resolução para esse tipo de problema, da forma
Objeto-relacional...


Obrigado a todos.


SQL gerado, que utilizei no pgAdmin III, 1.10,  trabalhando com o Postgres
8.4.4 no Debian Squeeze 64Bits

create type sexo AS ENUM ('masculino', 'feminino', 'indefinido');

create table "pessoa"(
    "id" serial not null,
    "nome" varchar not null,
    "sexo" tsexo not null,
    primary key (id)
    );

create table "medico"(
    "num_crm" varchar not null,
    "especialidade" varchar not null,
    primary key (id)
    ) inherits (pessoa);


create table "paciente"(
    "num_sus" varchar not null,
    primary key (id)
    ) inherits (pessoa);


-- 
Fabio C. Barrionuevo da Luz
UFT - Universidade Federal do Tocantins
Palmas - Tocantins - Brasil - America do Sul - Terra
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a