Управление изменениями структуры базы данных в проектах

alexcrown

Новичок
Управление изменениями структуры базы данных в проектах

А вот как вы распространяете структуру БД в своих приложениях и как обновляете при изменении?

Для себя я пока нашел поставляемую с AdoDb библиотечку AXMLS (структура базы описывается в xml, умеет автомаически обновляеть базу в соответствии с новым описанием) Но в ней нет нескольких нужных мне фич. В частности, мне нужно уметь выполнять скрипты при добавлении/модификации столбцов. Я конечно допилю её под себя, но может кто встречал интресные альтернативы?

Забавно. Прямо передо мной аналогичную тему поднял cDLEON тут, а я и не заметил.
 

alexcrown

Новичок
Не, мне нужна штука, которую я смогу распространять со своим приложением. Хотя, конечно, можно распространять сами скрипты обновления от версии к версии, но мне это кажется не очень красивым решением (особенно для приложений, работающих с различными СУБД через какой-нибудь слой абстракции)
 

phpdev2007

Новичок
alexcrown
выход один, проектировать так приложения чтоб минимально было завязано к структуре бд.
 

alexcrown

Новичок
phpdev2007
Не, ну это слишком радикально. Задача-то в принципе решаема. Я вон и пример решения привел. Просто в нем не учтено несколько принципиальных для меня вещей. Или это задача из той области, где в каждом проекте используется своё решение?
 

Alexandre

PHPПенсионер
Если есть реальный саппорт приложений, то его можно распространять через PEAR каналы или организовать WEBServis, который будет отсматривать обновления и их выполнять.
 

FractalizeR

Новичок
Автор оригинала: alexcrown
Не, мне нужна штука, которую я смогу распространять со своим приложением. Хотя, конечно, можно распространять сами скрипты обновления от версии к версии, но мне это кажется не очень красивым решением (особенно для приложений, работающих с различными СУБД через какой-нибудь слой абстракции)
Так делает VBulletin. Почему это некрасивое решение? Мне кажется, при использовании автоматических изменений рано или поздно вы можете натолкнуться на ситуацию, в которой такое автоматическое изменение структуры базы будет невозможно для достижения требуемого результата.
 
Сверху