Query Abstraction Layer
QAL is an open source development project that aims to
QAL is a collection of libraries for mixing, moving, merging, substituting and transforming data.
Sources and destinations include different database backends, files format like .csv, XML and excel. And even untidy HTML web pages.
For SQL/RDBMS backends, it has a database abstraction layer that supports basic connectivity to Postgres, MySQL, DB2, Oracle and MS SQL server. It uses XML formats(the SQL schema is self-generated) for representation of queries, transformation and merging, making it all scriptable.
With regards to SQL, QAL uses a subset of SQL features and data types, which while not complete however should be sufficient for most usages. It is however easy to instead use backend specific SQL when the queries don't have to be backend-agnostic.
It is currently distributed as a Python Library (.egg) and a debian package file(.deb).
It is related to the Optimal BPM project. Historically, the Optimal BPM project used to be DAL/QAL.
[Category:Python Framework]