Relacionamento no Banco ou no Hibernate?

4 respostas
rodrigo.p

Olá galera!

Eu tive a seguinte duvida. Quando eu crio o relacionamento no hibernate eu preciso criar também os relacionamentos no banco de dados?

4 Respostas

nbluis

Se ele gerencia o banco pra ti, ele mesmo cria isso…

sapulha

Não necessariamente, você pode fazer seu mapeamento relacionando duas entidades por campos das tabelas que não são necessariamente chaves estrangeiras nas tabelas.

Um belo exemplo disso é quando se usa MySQL, que tem algumas restrições quanto a chaves estrangeiras.

Só tome cuidado, pois uma vez que não existe o relacionamento no banco de dados, você pode acabar inserindo “filhos sem pai” nas tabelas.

Ex: Salvar um funcionário sem existir a pesso…entendeu ?

M

Eu particularmente gosto do relacionamento dentro do banco também, evita problemas, ex: um sistema de terceiros que não usa hibernate pode fazer merda…ou quando acessa o banco direto para dar manutenção, o bom é ficar no banco a integridade. Tem casos que não tem como ex: o mysql com tabelas MyISAM.

mas se usa mysql com INNODB postgree ou outro coloca no banco também.

Quem não concorda posta ae.

Falou

rodrigo.p

Amigos obrigado pela opinião de vcs.

Eu tinha entendido q o próprio Hibernate já se encarregava de manipular todos os dados da tabela sem precisar em criar os relacionamento no bd.

Eu mesmo consegui mapear em xml um relacionamento de 1:N entre uma classe Pessoa e Endereco. Em um dos meus testes eu queria apagar o registro pessoa e automaticamente todos os enderecos que estão relacionados com a pessoa. Eu consegui realizar esta operação só pq eu criei o relacionamento no bd.

Isso está certo?

Criado 23 de fevereiro de 2007
Ultima resposta 23 de fev. de 2007
Respostas 4
Participantes 4