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