python ORMs
"Not really" ORMs:
- Python Database Row Module - seems to allow read access to result-sets, but not so much write access for inserts or updates.
- How do I find the column names in a cursor? - python code/methods/approaches/recipes for accessing resultsets as dictionaries
- Generate field name to column number dictionary - more python recipes for resultset dicts
- insert a dictionary into sql data base - python recipes for converting dicts into insert statements
"Actual" ORMs:
- dbObj - developed as part of Kura
- PDO: Python Database Objects - looks good for queries, not sure about updates/inserts
- PyDO - looks really cool, nice object model, immediate updates on dictionary modifies, has to know about table layout, but has tools to browse your catalog and produce the corresponding classes. But, is bundled as part of the "Skunkweb Application Server" and not easily usable outside that.
- PyDO 2 - complete rewrite of pydo1? At the very least, lots of changes, and completely independent of Skunkweb
- SQLAlchemy - Not sure yet. Seems to be .. feature-rich, but maybe more framework than I want.
- SQLObject - Looks nice if you're accessing fields directly. Not sure about pulling/pushing whole rows from dictionaries.
- SQLObject2 and SQL-API `http://sqlobject.org/sqlapi/ - A project to "factor certain basic parts out of SQLObject" into some presumably better design of some sort. Currently in "pre-alpha". See also the blog announcement.
Discussions of ORMs:
- Why use an ORM at all, anyway? - Talks about python vs java interfaces to db's, includes a reply comment from one of the developers of python's dbapi.
- Python ORM tools - some ORM history, purpose, design, cites PDO and SQLObject
- ORM vs SQL - He doesn't think ORMs are a good idea
- Another word on the Relational Model and Python - a more theoretical discussion, cites SQLAlchemy.
Other lists of ORMs:
- HigherLevelDatabaseProgramming - from the python.org wiki

