Pergunta

Im avaliar liquibase para um projeto a partir de hoje.

Alguém usou para criar procedimentos, funções, basicamente todo o material plsql?

Se não, é possível escrever código SQL embutido nos arquivos XML?

Agradecemos antecipadamente.

Foi útil?

Solução

Há uma tag embutido createProcedure em liquibase de gestão dos procedimentos . A melhor abordagem é geralmente combinar o ou etiquetas com runOnChange tão liquibase irá atualizar seu procedimento quando e somente quando você atualizar a definição. Dessa forma, você pode fazer diffs entre seus arquivos XML changelog ao longo do tempo e ver como o processo mudou.

Usando a tag SQLFile para arquivo de referência por armazenada-proc é também popular, ou, como você disse, você pode usar o sql tag de linha personalizado sql.

Outras dicas

Eu encontrei problemas com a tentativa do uso da tag sql para procedimentos armazenados, gatilhos e funções, mas no meu caso eram comprovadamente problemas com o driver MySQL JDBC, e não Liquibase si. A prática que eu tenha resolvido em é usar a refatoração SQLFile como Nathan sugere, em seguida, para controlar o código / gatilho / função SP no mesmo projeto como o changelog, controle de versão no sistema de código fonte junto com ele. Isto permite-lhe gerir a SP / whatever código como se fosse código fonte real.

Configuração runOnChange = "true" no conjunto de alterações que contém o refactoring SQLFile é essencial. É este interruptor (obrigado, Nathan), que permite o controle de fonte real de código de banco de dados processual.

Embora eu não tenha usado liquibase para procedimentos armazenados, tenho alguma experiência de Liquibase para operações mais genéricas.

É possível sql de gravação personalizado, seja incorporado no arquivo xml ou referenciado a partir de um arquivo externo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top