Предположим, что необходимо добавить 2 столбца в таблицу и изменить 1. Из чистого представления дизайна мне нужно создать 3 набора изменений с 3 различными предварительными условиями: 2 столбца существуют, 1 столбец имеет неправильный тип.
Это понятный подход к дизайну, но он приводит к 3 отдельным таблицам изменений, что может быть очень дорого. Например, MySql копирует или перестраивает всю таблицу при добавлении или изменении столбца. Зато позволяет объединить несколько измененных операторов в один. Но один изменяющий набор изменений должен сочетать предварительные условия, что невозможно - должен ли я выполнять большое изменение, когда одно из них истинно или все?
Итак, есть ли способ просмотреть несколько предварительных условий и построить таблицу изменений только из успешных предварительных условий?