Pessoal, possuo uma entidade: Grupo que se relaciona com outra: Produto
onde um produto é composto por um grupo!
Até ai tudo bem, tenho a situacao:
[list]grupo
id - pk
codigo
descricao[/list]
na minha regra de negocio, utilizo o codigo como unico e imutável.
Duvida: Eu elimino o ID e deixo somente o codigo como chave primária então?
Pode ser ^^
Só precisa definir se é unidirecional ou bidirecional esse relacionamento.
![:wink: :wink:](//www.guj.com.br/images/emoji/twitter/wink.png?v=5)
No banco vc colocou qual das duas como chave
vlws
[quote=LeoMarola]Pode ser ^^
Só precisa definir se é unidirecional ou bidirecional esse relacionamento.
[/quote]
o que seria isso ?
no banco até então estava a ID . mas acho que no caso, é desnecessario neh ?
Se código respeitar os requisitos pra ser uma PK, sim ![:smiley: :smiley:](//www.guj.com.br/images/emoji/twitter/smiley.png?v=5)
É a navegação entre as entidades, tanto no MER como no diagrama de classes existe esse conceito, se for bidirecional provavelmente as duas entidades terão a PK das outras o que pode vir a ser tornar uma tabela associativa (para facilitar uma alteração 1 - 1 para 1 - N ou N - N)
[]'s ![:wink: :wink:](//www.guj.com.br/images/emoji/twitter/wink.png?v=5)
Cara seguinte, quando vc defini no banco de dados a chave primaria e o conceito de Integridade de Referencia diz que a chave primaria nunca podera ser deletada ou alterada, portando pela regra de banco de dados o id não podera ser alterado, mas para aplicações e dependendo da sua logica de negocio o id pode até ficar encapsulado e codigo na aplicação ficar como chave primaria, mas eu aconselho vc nunca alterar nenhum dos dois.
Quanto ao relacionamento “unidirecional e bidirecional” significa que em qual das tabelas vc esta inserindo a chave estrangeira, ou seja se nas tabelas que estão fazendo relacionamento vc esta colocando os ids nas duas tabelas ou somente uma esta recebendo o id da outra.
vlws