предварительный просмотр операторов SQL перед миграцией с помощью Flyway

Я новичок в Flyway и использую базу кода Flyway 2.1 для миграции и выполнения операторов SQL в предыдущей версии схемы с использованием Flyway. Как только я выполняю свои новые операторы SQL, запись версии в таблице метаданных увеличивается.

Но прежде чем я перенесу свою новую версию схемы (т.е. прежде, чем я перенесу / выполню новые операторы SQL в схеме базы данных), я хотел бы зафиксировать все новые SQL-запросы в другом файле preview.sql, чтобы администраторы баз данных могли видеть SQL-запросы, прежде чем они продолжат миграцию.

Я планирую сделать это, добавив метод flyway.preview () в файл Flyway.java. Не могли бы вы сообщить мне, какие еще файлы необходимо изменить для этого?

Кроме того, я хочу сделать это только в том случае, если новая версия> текущей версии схемы в базе данных. Я проверил код 2.1, но класс SchemaVersion устарел в 2.1, и я не уверен, как получить текущую версию из базы данных.

Буду признателен за вашу помощь или любые предложения, которые исправят мой подход.

Спасибо


person user2176326    schedule 16.03.2013    source источник
comment
Возможно совпадение того, что вы делаете, и этого: github.com/flyway/flyway/issues/ 87 - Может быть, когда вы создадите свое решение, вы сможете отправить его через пулреквест?   -  person Adam Luchjenbroers    schedule 21.04.2017


Ответы (1)


Необходимые абстракции для поддержки этого еще не созданы, но я планирую добавить их в течение следующих нескольких недель для поддержки пакетных обновлений в 2.2. Как только это будет сделано, реализовать это станет намного проще.

Что касается запроса состояния БД, у вас есть Flyway.info (), чтобы помочь вам.

person Axel Fontaine    schedule 16.03.2013
comment
Привет, Аксель, Спасибо за ответ. Согласно вашему ответу на мой пост, будет ли команда предварительного просмотра в строках информации? То есть, если я сделаю предварительный просмотр flyway.cmd, будет ли это выводить список SQL-запросов, которые будут применяться? Поскольку я сейчас пытаюсь реализовать эту функциональность, мне любопытно узнать. Спасибо - person user2176326; 18.03.2013
comment
Нет, я бы реализовал так, чтобы можно было менять исполнителей. Выполните либо jdbc, либо stdout, либо что-то в этом роде. - person Axel Fontaine; 18.03.2013
comment
Привет, Алекс, я хотел бы распечатать ту же самую таблицу ascii, которая печатается на консоли, в текстовый файл в том же формате .. есть ли вообще возможность экспорта таблицы? Спасибо - person user2176326; 22.03.2013
comment
Это часть частного API (может измениться в любое время, используйте на свой страх и риск). Взгляните на исходные коды инструмента командной строки. - person Axel Fontaine; 22.03.2013
comment
Как все прошло? В настоящее время я подумываю о внедрении Flyway, и возможность предварительного просмотра / экспорта миграций (для использования в средах, где мы не сможем сразу использовать Flyway) была бы весьма полезной. - person Adam Luchjenbroers; 21.04.2017