Python Source
Build Systems
Charting & Reporting
Code Analyzers
Connection Pools
HTML Parsers
Issue Tracking
Logging Tools
Network Clients
PDF Libraries
Parser Generators
Project Management
RSS & RDF Tools
Search Engines
Template Engines
Testing Tools
Web Frameworks
Web Servers
Web Services
Web Testing
Wiki Engines
Workflow Engines
XML Parsers

Open Source Persistence Frameworks in Python


SQLObject is a popular Object Relational Manager for providing an object interface to your database, with tables as classes, rows as instances, and columns as attributes. SQLObject includes a Python-object-based query language that makes SQL more abstract, and provides substantial database independence for applications.

Go To SQLObject

Python Database Objects

Python Database Objects, is a collection of objects for use with Phase or with the Python Programing Language. PDO is designed to be robust and simple at the same time, allowing access to multiple styles of databases, with one set of instructions. This means never having to worry again about your syntax when changing Database Platforms on your next project.

Go To Python Database Objects

PyTable RDBMS Wrapper

PyTable is a relational database wrapper based on BasicProperty's rich property-based modeling system. PyTable provides a \"thick\" wrapper for PostgreSQL (and MySQL) database adapters which fills in missing functionality in the adapter layer to provide a uniform rich external API.

Go To PyTable RDBMS Wrapper


SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL. It provides a full suite of well known enterprise-level persistence patterns, designed for efficient and high-performing database access, adapted into a simple and Pythonic domain language.

Go To SQLAlchemy


adodbapi is a Python module that makes it easy to use Microsoft ADO for connecting with databases and other data sources. Features: * 100% DB-API 2.0 compliant. * Includes pyunit testcases that describes how to use the module.

Go To adodbapi


PyDO(Python Data Objects) is a Object-Relational database access tool. It provides a convenient API for retrieving and manipulating data without constraining in any way how the data is persisted at the RDBMS level.

Go To PyDO


Storm is an object-relational mapper (ORM) for Python developed at Canonical. The project has been in development for more than a year for use in Canonical projects such as Launchpad, and has recently been released as an open-source product.

Go To Storm


Dejavu is a thread-safe Object-Relational Mapper for Python applications. It is designed to provide the \"Model\" third of an MVC application. When you build an application using Dejavu, you must supply the Controller(s) and View(s) yourself. Dejavu does not provide these, and does its best to not limit your choices regarding them.

Go To Dejavu

Modeling Framework

Modeling is an Object-Relational Bridge for python. The Modeling framework intends to fill the gap between the python object world and relational databases. It relies on a model, based on Entity-Relationship Modeling, that describes how the two worlds map to each other. From your design of such a model, the database's schema and corresponding python classes are automatically generated. Thus, once you have designed how your classes should be stored in the RDBMS, you can focus on the real challenges - the logic of your business objects - while remaining in the object-oriented world of those objects and never having to worry about the SQL and RDBMS persistence layer below.

Go To Modeling Framework

Python Database Row Module

Python Database Row Module defines light-weight objects which allow very flexible access to a fixed number of positional and named attributes via several interfaces. Or, more simply, these objects are a better way of returning the results of database queries, since they allow efficient access to fields by name or by index. It uses some of the new features of the Python 2.2 class system, and provide a nice demonstration of how to take advantage of them.

Go To Python Database Row Module

Database Objects

Database Objects (dbObj) is a dynamic object-oriented, repository based layer on top of the Python DB-API II spec. DbObj is developed in sync with Kura database application. DbObj wraps the DB-API II spec in several layers. At the bottom, there's a wrapper around the interface. the module connects to the database. asks the database to execute queries and returns results.

Go To Database Objects


HyperSQL is like a doxygen for SQL, hypermapping SQL views, packages, procedures, and functions to HTML source code listings and showing all code locations where these are used. The internal \"where used\" functionality also scans C++ and Java source files.

Go To HyperSQL