On 5/3/06, Evan Rosson <[EMAIL PROTECTED]> wrote:
> I'd like to create a tool to help with SQLAlchemy schema migration a
> bit. I've been interested in this for a while now (ie. I'm not just
> blindly copying a suggestion from this mailing list) - I'm working on a
> TG project which I know will have a good number of database changes
> later on (lots of small changes, mostly), and I need a way to manage
> that. SQLAlchemy fits many other requirements for my project, but lacks
> a tool to manage schema changes; I've been looking into how I'd make a
> good schema migration tool - seems like a good candidate for my SoC
> project.

Dude... You'd make me a very happy camper if you're approved and go
after this one.

> I've made good progress on my proposal, though it's not done just yet.
> I think I've got a pretty good plan so far, but more info on how this
> has been done before would be helpful. So, my question: has anyone out
> there have a schema migration tool they've used and really liked?
>
> I'm familiar with these:
> - SQLObject's versioning:
> http://sqlobject.org/sqlobject-admin.html#versioning-upgrading
> - Rails' migration:
> http://api.rubyonrails.com/classes/ActiveRecord/Migration.html
> - Writing migration scripts by hand (the "default" way to do things,
> with no tool)
> Anyone out there used something good for this that I haven't looked
> into?

This is not a problem that I've studied in great detail. However, I
understand that doing it automatically is dangerous and fraught with
peril.

So, I think the best bet is to not do it automatically. Here's what I'd see:

1) a tool to know whether or not a conversion should be applied
2) a way to express DDL in as database-independent a fashion as possible
3) a way to express the database-specific portions where #2 can't quite do it
4) a way to apply the changes in a given environment

Others may have some thoughts on this as well, and I know that Mike
Bayer has not personally been interested in this problem. However, I
think it's important, particularly as many people may do development
on sqlite in one place and deploy on something else in another.

Kevin

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/turbogears
-~----------~----~----~----~------~----~------~--~---

Reply via email to