Миграция базы данных с Qt4 (изменения схемы)

Из Ruby on Rails я узнал о удобном и очень управляемом способе выполнения миграции баз данных.

Как бы справиться с такими случаями в Qt4? Это не обязательно должно быть настолько продуманным, как решение Rails. Я бы отлично справился с запуском SQL и фрагментов кода для перехода вверх или вниз по списку версий моих данных.

Я немного погуглил, но, похоже, стандартного решения нет. Кажется, даже нет никого, кто раньше чесал голову. Похоже, каждый реализует собственное представление о том, как это сделать.

Кто-нибудь заинтересован или работает над стандартным решением и хочет поделиться своими усилиями? А может вообще есть рабочая реализация? Я думаю о том, чтобы иметь что-то подобное, например, таблицу information_schema в Rails, и позволить приложению запускать мастер для повышения или понижения версии базы данных (и, возможно, сначала предложить сделать резервную копию / дамп), или в качестве другого варианта просто запустить миграция без мастера, может быть, просто удобная полоса прогресса.


person hurikhan77    schedule 19.06.2010    source источник
comment
По какой причине вы хотите придерживаться Qt? Единственная причина, по которой я мог вообразить, - это встраивание миграции схемы и / или начальной загрузки базы данных в приложение на основе Qt в качестве бонусной функции. В противном случае я не вижу причин требовать решения на основе Qt.   -  person Ihor Kaharlichenko    schedule 20.08.2010
comment
@Ihor Итак, какие альтернативы предлагаются?   -  person hurikhan77    schedule 20.08.2010
comment
Это зависит от того, что именно вам нужно: миграция схемы, миграция данных или и то, и другое? Вы можете ознакомиться с инструментами, предлагаемыми в stackoverflow .com / questions / 2051340 / и stackoverflow.com/questions/2454815/database-migration. Хотя, если вам действительно нужно решение, которое вы можете встроить в существующее приложение Qt с красивым графическим интерфейсом, я заинтересован в участии / создании проекта с открытым исходным кодом.   -  person Ihor Kaharlichenko    schedule 20.08.2010
comment
@Ihor Я думаю о чем-то вроде того, как это делает Ruby on Rails, только что завернутый в Qt. При запуске приложения приложение должно обнаруживать ожидающие миграции и показывать индикатор выполнения, а также выполнять миграцию схемы и данных. Если вы хотите начать со мной проект с открытым исходным кодом: Круто. :-)   -  person hurikhan77    schedule 20.08.2010


Ответы (1)


QDjango может вам понравиться, он имитирует ORM базы данных django

Обновлять:

К сожалению, QDjango не поддерживает миграции. - @Riateche

person Alireza Savand    schedule 26.12.2011
comment
К сожалению, QDjango не поддерживает миграции. - person Pavel Strakhov; 03.05.2012