Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Hibernate, MySql e chave estrangeira

Boa tarde, Pessoal!

Para aqueles que estão utilizando o MySql na implementação dos exercícios das aulas e estão com problema no mapeamento das chaves estrangeiras, poderão utilizar a seguinte tag no persistence.xml:

            <property name="hibernate.hbm2ddl.auto" value="update"/>

A tag em questão, embora dê erros de sintaxe pelo Hibernate caso não crie as tabelas manualmente no MySql, faz gerar as chaves estrangeiras.

Já no lado de criar as tabelas no Command Line, não é necessário criar as chaves estrangeiras e nem por constraints.

P.S: Como sugestão, gostaria de solicitar que pusessem na descrição das aulas o método para o uso do MySql, pois muitos alunos já o utilizam em outros estudos e podem ficar atrasados na resolução das mensagens de erro que podem surgir. Grato!

1 resposta
solução!

Oi Marcos,

Isso mesmo! Inclusive essa propriedade foi mostrada no finalzinho desta aula: https://cursos.alura.com.br/course/persistencia-jpa-introducao-hibernate/task/88903

Para o caso de usar o MySQL o ideal é utilizar como valor CREATE ao invés de UPDATE, pois é comum dar uns erros por conta das chaves estrangeiras quando usamos o MySQL com o valor update nessa propriedade.

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software