Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 57 lines (42 sloc) 1.741 kB
d1b5cd8 @kgaughan Swap the readme files.
authored
1 =====
2 dbkit
3 =====
4
5 :Author:
6 Keith Gaughan (http://stereochro.me)
7
8 :Repo:
9 https://github.com/kgaughan/dbkit
10
5426397 @kgaughan Made the README read like a proper README.
authored
11 :Documentation:
12 http://dbkit.readthedocs.org/
d1b5cd8 @kgaughan Swap the readme files.
authored
13
5426397 @kgaughan Made the README read like a proper README.
authored
14
15 **dbkit** is a library that abstracts away at least part of the pain
16 involved in dealing with `DB-API 2`_ compatible database drivers.
d1b5cd8 @kgaughan Swap the readme files.
authored
17
8ee9f8b @kgaughan Travis CI status image.
authored
18 .. image:: https://secure.travis-ci.org/kgaughan/dbkit.png?branch=master
4be226b @kgaughan Travis CI project link.
authored
19 :width: 89px
20 :height: 13px
21 :target: http://travis-ci.org/kgaughan/dbkit
8ee9f8b @kgaughan Travis CI status image.
authored
22
d1b5cd8 @kgaughan Swap the readme files.
authored
23
24 Overview
25 ========
26
27 *dbkit* is intended to be used in circumstances where it is impractical
28 or overkill to use an ORM such as `SQLObject`_ or `SQLAlchemy`_, but it
29 would be useful to at least abstract away some of the pain involved in
30 dealing with the database.
31
5426397 @kgaughan Made the README read like a proper README.
authored
32 Features:
33
34 - Rather than passing around database connections, statements are executed
35 within a database `context`_, thus helping to decouple modules that
36 interface with the database from the database itself and its connection
37 details.
38 - Database contexts contain references to the exceptions exposed by the
39 database driver, thus decoupling exception handling from the database
40 driver.
41 - Easier to use transaction handling.
42 - Easier iteration over resultsets.
43 - Connection pooling. In addition, any code using pooled connections has
44 no need to know connection pooling is in place.
45 - Query logging.
d1b5cd8 @kgaughan Swap the readme files.
authored
46
47 Non-aims:
48
49 - Abstraction of SQL statements. The idea is to get rid of the more
50 annoying but necessary boilerplate code involved in dealing with
5426397 @kgaughan Made the README read like a proper README.
authored
51 `DB-API 2`_ drivers, not to totally abstract away SQL itself.
d1b5cd8 @kgaughan Swap the readme files.
authored
52
53 .. _DB-API 2: http://www.python.org/dev/peps/pep-0249/
54 .. _SQLObject: http://sqlobject.org/
55 .. _SQLAlchemy: http://sqlalchemy.org/
5426397 @kgaughan Made the README read like a proper README.
authored
56 .. _context: http://docs.python.org/library/contextlib.html
Something went wrong with that request. Please try again.