UESQLC is an Open Source embedded
SQL-92 precompiler for C++ and JAVA, designed to be extensible using
SGML documents.
It lets users access multiple relational database management systems from a
single source program. Furthermore, it can verify the three levels of SQL
conformance (Entry, Intermediate and Full).

To build the documentation of both UESQLC and MPCL, you must use
DOXYGEN, which will generate
the documentation in PostScript, DVI, Man (Unix) and HTML formats.
In the following pages you can find the HTML documentation for
UESQLC and MPCL.

UESQLC has been written in C++ using the MPCL library (see below).
It was developed on Linux and it was
tested on Linux (with PostgreSQL LIBPQ) and
Sun Solaris (with Oracle Server OCI)
but ports to other operating systems are welcome.

Here is a table with the platforms where the compiler has been compiled
and tested.

Canonical system name from config.guess

i586-pc-linux-gnu

i686-pc-linux-gnu

sparc-sun-solaris2.6

Here is a table with the available targets.

Target (CDML filename)

DBMS

API

API version

odbc-3.x

any with ODBC support

ODBC

>= 3.x

oracle-oci-7.x

Oracle Server

OCI (Oracle Call Interface)

>= 7.x

postgresql-jdbc-3.0

PostgreSQL

JDBC

>= 3.0

postgresql-libpq-6.2.x

PostgreSQL

LIBPQ

>= 6.2.x

The scanner and parser for SQL-92, has been written from scratch.
It supports SQL-92 but character sets and modules. Where this precompiler
shines is in the possibility of creating new targets
(MySQL,
Informix SQL, etc.)
by simply writing a new SGML document (formally CDML document) and without
having to recompile the compiler. Furthermore, you can build a CDML document
for an API that doesn't support SQL but an equivalent query language.

With the use of the
GNU tools,
autoconf, automake and libtool, the portability
level of the compiler is very high.

UESQLC has been written by Rafael Jesús Alcántara Pérez with the
support of the professor (and friend) Sergio Gálvez Rojas as Master Thesis
Director in the University of Málaga. If you
want commercial support for this project, please contact with
Dédalo Ingenieros, S.L.