[firebase-br] Chave Primária Composta (Pros/Contra)
Eduardo Pelizzari de Andrade
eduardoandrade em persoft.com.br
Ter Mar 4 12:11:12 -03 2008
O ideal é não usar chave ou mesmo índices compostos, mais cada caso é um
caso.
Na sua estrutura partileira deve ser numerada a partir de 1 para cada
estante e volume precisa ser numerado a partir do 1 para cada
prateleira. Se for isso, não vejo vantagem em usar chave primária,
porque você ainda teria que guardar a ordem do registro dentro do seu
registro pai. Caso não seja necessário, ai é simples, você deixa volume
como chave primária do volume e numera seqüencialmente o volume a
partir do 0 até infinito independente da prateleira que ele está. A
prateleira será apenas uma chave estrangeira nesta tabela. Na relação da
prateleira e estante a mesma coisa.
HPensador escreveu:
> Bom dia Colegas!
>
> Gostaria da opinião de vocês sobre a questão de se utilizar chave
> primária composta.
>
> Create table exemplo1 (
> cod_tab1 integer not null,
> descricao varchar(40) not null,
> constraint pk_exemp1 primary key(codigo)
> )
>
> Create table exemplo2 (
> cod_tab2 integer not null,
> cod_tab1 integer not null,
> descricao varchar(40) not null,
> constraint fk_tab2_tab1 foreign key (cod_tab1) references exemplo1
> (cod_tab1) on update cascade,
> contraint pk_exemp2 primary key (cod_tab1, cod_tab2)
> )
>
> Create table exemplo3 (
> cod_tab3 integer not null,
> cod_tab2 integer not null,
> cod_tab1 integer not null,
> descricao varchar(40) not null,
> constraint fk_tab3_tab2 foreign key (cod_tab2) references exemplo2
> (cod_tab2) on update cascade,
> constraint fk_tab3_tab1 foreign key (cod_tab1) references exemplo1
> (cod_tab1) on update cascade,
> constraint pk_exemp3 primary key (cod_tab1, cod_tab2, cod_tab3)
> )
>
> Nobres colegas este exemplo retrata um situação atual que estou vivendo
> e não sei como poderia modificar essa estrutura. Já tentei utilizar
> Unique, mais não me atende a contento... vejam abaixo a estrutura que
> necessito montar.
>
> estante prateleira volume
> 1 1 1
> 1 1 2
> 2 1 1
> 2 1 2
> 2 2 1
> 2 2 2
> 2 3 1
> 2 3 2
>
> Sds,
> HPensador
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
--
Eduardo Pelizzari de Andrade
Persoft Softwares Aplicativos
Fone: 55 11 62218061
Mais detalhes sobre a lista de discussão lista