This page is for the discussion of a proposed implementation of a SQL backend for GRAMPS.
A proposed implementation is being developed in [http: //gramps.svn.sourceforge.net/viewvc/gramps/trunk/src/plugins/export/ExportSql.py?view=markup trunk/src/plugins/export/ExportSql.py] You can export most of GRAMPS through an SQL Export using the Export Assistant. (Currently, the selection options are ignored, and it will output everything).
SQL stands for "Structured Query Language" and is pronounced "sequel" (it is a joke: as it came after QUEL, it is its sequel). After you export your GRAMPS data into a file such as ''Untitled_1.sql'' using the above Exporter, then you can use SQL queries like:
$ sqlite3 Untitled_1.sql
SQLite version 3.5.9
Enter ".help" for instructions
dates family names people repository
events media notes places sources
sqlite> .headers on
sqlite> select * from people;
sqlite> select * from names where surname like "%Smith%";
The current database in GRAMPS would require that you write some code to do this, and you'd need to know some details about the data.
= SQL Backend =
For sql, one would use the prepare method, obtain all people in a list, then return True or False if person is in this list. As db is passed, db can have a support_sql attribute, and code can be written depending on this setting. This does not look very ideal though.
=== See Also ===