自定义按环境执行的SQL [英] Customizing SQL executed per environment

查看:54
本文介绍了自定义按环境执行的SQL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们使用flyway从dev-> uat-> prod推广我们的应用程序.使用flyway还可以使用较轻量的sql数据库(例如Derby或H2)将应用程序部署到开发人员桌面,这将非常有用.出于各种原因,对于我们的某些开发人员而言,Oracle不是一个不错的选择.

We use flyway to promote our application from dev -> uat -> prod. It would be very useful to use flyway to also deploy the application to developer desktops using a lighter-weight sql database (e.g. Derby or H2). For various reasons Oracle is not a good option for some of our developers.

指出了类似的问题飞航的能力,可以为每个目标数据库维护单独的脚本集.

A similar question pointed out a capability in flyway to maintain seperate sets of scripts per target database.

我不愿意依靠两组脚本的手动同步. Oracle和Derby之间的SQL差异很小.

I'm reluctant to rely on manual synchronization of two sets of scripts. The SQL difference between Oracle and Derby are minor. Is it possible in flyway for a developer to insert some java code to do some light-weight dynamic stripping of the SQL at runtime based on the environment (e.g. remove tablespace designation)?

推荐答案

对于这样的细微差别,Flyway的占位符替换确实令人惊讶.简单并轻松弥合常见的细微差异. http://flywaydb.org/documentation/faq.html#placeholders

For minor differences like this, Flyway's placeholder replacement does wonders. Simple and bridges common minor differences easily. http://flywaydb.org/documentation/faq.html#placeholders

这篇关于自定义按环境执行的SQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆