Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Flyway

Olá, para a utilização do Flyway, não teria uma forma de automatizar a criação das migrations sem ter de escrever o sql das alterações das tabelas manualmente ? No Nest JS , tem um ORM chamado Prisma, e ele que gerencia as migrations de forma automatica, seria possivel fazer isto com Flyway?

3 respostas

Oi Michael!

Se for para gerenciar as migrations você pode utilizar a CLI do próprio flyway: https://flywaydb.org/documentation/usage/commandline/

Mas mesmo asim ainda precisa escrever os comandos SQL em cada arquivo de migration, pois assim temos um controle mais "rígido" de quais comandos sql serão executados no banco de dados a cada migration.

No Laravel, do PHP, tem um esquema de migrations que você escreve códigos em PHP mesmo, sem precisar escreve SQL: https://laravel.com/docs/9.x/migrations Não sei se o Prisma seria algo parecido, mas no caso do Flyway não.

Mas tipo assim Rodrigo, se em um projeto, estiver utilizando a opção do hibernate : spring.jpa.hibernate.ddl-auto= update, se alterar uma classe, por exemplo, adiconando um novo atributo para ela, o hibernate atualizaria as tabela no banco de forma automatica, como deveria proceder no uso do fly away? Eu teria de fazer uma nova migration com o comando sql? E se por acaso algum desenvolvedor acabar errando o comando executado escrito na migration?

solução!

Essa propriedade para geração automática do banco é apenas para testes e não deve ser utilizada em produção!

É possível utilizar a ferramenta de linha de comando do Flyway para um melhor controle, podendo fazer rollback de uma migration que falhou.