Added doc notes on new database hierarchy
svn: r14111
This commit is contained in:
parent
4fd46fe669
commit
2d36aea65a
@ -18,6 +18,57 @@
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
"""
|
||||
Gramps Database API.
|
||||
|
||||
Database Architecture
|
||||
=====================
|
||||
|
||||
Access to the database is made through Python classes. Exactly
|
||||
what functionality you have is dependent on the properties of the
|
||||
database. For example, if you are accessing a read-only view, then
|
||||
you will only have access to a subset of the methods available.
|
||||
|
||||
At the root of any database interface is either DbReadBase and/or
|
||||
DbWriteBase. These define the methods to read and write to a
|
||||
database, respectively.
|
||||
|
||||
The full database hierarchy is:
|
||||
|
||||
- B{DbBsddb} - read and write implementation to BSDDB databases (U{gen/db/write<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/write.py?view=markup>})
|
||||
- B{DbWriteBase} - virtual and implementation-independent methods for reading data (U{gen/db/base.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/base.py?view=markup>})
|
||||
- B{DbBsddbRead} - read-only (accessors, getters) implementation to BSDDB databases (U{gen/db/read.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/read.py?view=markup})
|
||||
- B{DbReadBase} - virtual and implementation-independent methods for reading data (U{gen/db/base.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/base.py?view=markup})
|
||||
- B{Callback} - callback and signal functions (U{gen/utils/callback.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/utils/callback.py?view=markup})
|
||||
- B{UpdateCallback} - callback functionality (U{gen/updatecallback.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/read.py?view=markup gen/updatecallback.py?view=markup>})
|
||||
- B{DbBDjango} - read and write implementation to Django-based databases (U{web/djangodb.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/web/djangodb.py?view=markup})
|
||||
- B{DbWriteBase} - virtual and implementation-independent methods for reading data (U{gen/db/base.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/base.py?view=markup})
|
||||
- B{DbReadBase} - virtual and implementation-independent methods for reading data (U{gen/db/base.py<http://gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/gen/db/base.py?view=markup})
|
||||
|
||||
DbBsddb
|
||||
=======
|
||||
|
||||
The DbBsddb interface defines a hierarchical database
|
||||
(non-relational) written in
|
||||
U{http://www.jcea.es/programacion/pybsddb.htm PyBSDDB}. There is no
|
||||
such thing as a database schema, and the meaning of the data is
|
||||
defined in the Python classes above. The data is stored as pickled
|
||||
tuples and unserialized into the primary data types (below).
|
||||
|
||||
DbDjango
|
||||
========
|
||||
|
||||
The DbDjango interface defines the Gramps data in terms of
|
||||
I{models} and I{relations} from the
|
||||
U{Django project<http://www.djangoproject.com/}. The database
|
||||
backend can be any implementation that supports Django, including
|
||||
such popular SQL implementations as sqlite, MySQL, Postgresql, and
|
||||
Oracle. The data is retrieved from the SQL fields, serialized and
|
||||
then unserialized into the primary data types (below).
|
||||
|
||||
More details can be found in the manual's U{Using database API<http://www.gramps-project.org/wiki/index.php?title=Using_database_API>}.
|
||||
"""
|
||||
|
||||
from base import *
|
||||
from dbconst import *
|
||||
from cursor import *
|
||||
|
Loading…
Reference in New Issue
Block a user