2
respostas

Quando usar Migrations?

Fiquei me perguntando, quando devo de fato usar as migrations. Todos os projetos que trabalhei com spring usavam JPQL. Nesse caso, qual seria a melhor opção?

2 respostas

Olá, Lincoln!

As migrations são utilizadas para controlar a evolução do esquema do banco de dados de forma organizada e controlada. Elas permitem que você crie e atualize a estrutura do banco de dados de maneira incremental, sem precisar modificar diretamente os arquivos existentes.

No contexto do curso de API REST com Kotlin e Spring Boot, as migrations são utilizadas para criar as tabelas do banco de dados e definir suas colunas, chaves primárias e estrangeiras. Além disso, elas também podem ser usadas para adicionar ou modificar colunas em tabelas já existentes.

É importante ressaltar que, ao utilizar migrations, você tem um controle mais preciso sobre as alterações no banco de dados e mantém um histórico das mudanças realizadas. Isso facilita a manutenção do banco de dados e permite desfazer alterações, se necessário.

Sem migrations, toda a evolução do banco de dados é controlada manualmente, via scripts SQL que não ficam salvos com o código da aplicação e muitas vezes se perdem com a pessoa que os executou, não tendo assim uma automatização para execução, dificultando também o rollback para versões anteriores do schema do banco de dados, quando necessário.

Espero ter ajudado e bons estudos!

Perfeito, entendi... mas no caso, mas o uso de JPQL na criação das queries não excluiria esse risco? Já que a query é montada na requisição?