comp.lang.ada
 help / color / mirror / Atom feed
From: "Juergen Pfeifer" <juergen.pfeifer@gmx.net>
Subject: Re: Ada and Database
Date: Tue, 2 Jan 2001 19:36:20 +0100
Date: 2001-01-02T19:36:20+01:00	[thread overview]
Message-ID: <92t73d$91m$06$1@news.t-online.com> (raw)
In-Reply-To: 3A520C8A.4BC39537@edf.fr

> I have a some "naive" questions regarding Ada and data bases (in SQL) :
> 1 - How can I implement a SQL data base in an Ada program developped
> with
> GNAT ? I mean is there some free package implementing a data base engine
> in Ada that can directly understand a request in SQL something like :
>     SQL_request(" SELECT ... FROM ....");
> 2 - More generaly, but tell me if I'm wrong, I suppose that it would be
> usefull to extend the Ada langage with some data base facilities, a bit
> like what has been done for tasking : a clear syntax directly
> understandable at upper level and consistent with the rest of the
> langage, and an implementation depending on what exists on the target :
> if a good database engine already exists, then simply creates a binding
> (like the binding bewteen Ada tasks and some OS thread) or if nothing
> exists use the one provided by the compiler (like GNAT under Ms-DOS)...
>
The ISO92 Standard for SQL clearly defines some of these interfaces to
specific languages, especially to Ada (Ada83 in mind).

One of these interfaces is the "Command Level Interface" (CLI) which has
been added to the standard after 1992 (if I remember correctly around 1994
or 1995). This CLI was heavily influenced by Microsofts ODBC and
most implementations of this interface are actually ODBC implementations.

Another interface is embedded SQL (which is part of the original 1992
standard).
Here the idea is to embed the SQL language into various host languages (Ada
is one of them) and let a preprocessor translate this embedded statements
into
some DB specific interface calls.

A further interface is so called "SQL Module Language" and there has been
an associated ISO Standard "SameDL" dealing with the integration of this
approach and Ada83. This was for sure the most sophisticated approach and
therefore there virtually was no relevant implementation (too heavy stuff).
"SameDL" has expired and probably there will be no successor dealing
with Ada95.

There exist of course proprietary call level APIs for various databases
(OCI for Oracle, libpq for PostgreSQL etc.) and on the WEB you can find
bindings to these APIs. But that's rather lowlevel and non-portable stuff.
Most database vendors today don't provide embedded SQL preprocessors
for Ada, I guess due to low commercial interest in such products.

Just a few weeks ago a free software project codenamed GNADE has
started (GNu Ada Database Environment) which tries to implement some
of the standard APIs for use with GNAT. It is in a very early prototyping
stage and not really usable at the moment. But maybe you want to monitor
the efforts.

Please have a look at
    http://www.snafu.de/~boavista/gnade.html or
    http://www.familiepfeifer.de/software/GNADE.html
for some partial efforts. If you feel you can contribute, please contact me
by Email.

Cheers
J�rgen






  parent reply	other threads:[~2001-01-02 18:36 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-01-02 17:14 Ada and Database OPERA
2001-01-02 18:26 ` Larry Kilgallen
2001-01-02 18:36 ` Juergen Pfeifer [this message]
2001-01-03 15:19 ` Mario Amado Alves
2001-01-04 11:15   ` Preben Randhol
2001-01-04 14:43     ` Robert Dewar
2001-01-04 18:39       ` Preben Randhol
2001-01-04 15:43     ` Florian Weimer
2001-01-05 14:58       ` Mario Amado Alves
2001-01-05 17:22         ` Florian Weimer
2001-01-08 12:40           ` Mario Amado Alves
2001-01-05 14:32     ` Mario Amado Alves
2001-01-06 17:34       ` Robert Dewar
2001-01-06 20:30         ` Larry Kilgallen
2001-01-06 22:37           ` Robert Dewar
2001-01-08 14:55             ` Mario Amado Alves
2001-01-09  4:23               ` Robert Dewar
2001-01-09 10:47                 ` Mario Amado Alves
2001-01-09 11:25                   ` Preben Randhol
2001-01-09 20:15                   ` Florian Weimer
2001-01-10 22:03                   ` Robert Dewar
2001-01-11 10:26                     ` Mario Amado Alves
2001-01-10 22:03                   ` Robert Dewar
2001-01-16 20:35                     ` Florian Weimer
2001-01-08 13:14         ` Mario Amado Alves
2001-01-09  4:25           ` Robert Dewar
  -- strict thread matches above, loose matches on Subject: below --
2004-11-28 13:28 ada and database matias
2004-11-28 14:17 ` Dmitry A. Kazakov
2004-11-28 23:04 ` David Botton
2004-11-29  5:55 ` bubble
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox