Ada Database Objects
Ada Other
Latest commit 45704e2 Feb 10, 2017 @stcarrez Update the notice
Permalink
Failed to load latest commit information.
db Rebuild the SQL files Nov 22, 2015
debian Update the debian package May 17, 2014
distrib Revert back to a default project because there is no static library Sep 5, 2015
regtests Implement Test_Set_Connection_Database procedure May 22, 2016
samples Rebuild the model files Nov 22, 2015
src Update the database configuration to escape the configuration value Feb 10, 2017
win32 Update the Windows installation Jul 14, 2014
.gitignore Ignore some files Jan 25, 2015
LICENSE.txt Add build files, copyright notice and README Sep 26, 2010
Makefile.in Fix installation and unstall targets Dec 23, 2015
NEWS Release 1.1.0 Dec 23, 2015
NOTICE.txt Update the notice Feb 10, 2017
README.md Merge branch 'master' of github.com:stcarrez/ada-ado Mar 22, 2016
aclocal.m4 Import from Ada Util Dec 12, 2015
ado.gpr.in Fix some build issues with GNAT 2014 May 16, 2014
ado_mysql.gpr.in Fix some build issues with GNAT 2014 May 16, 2014
ado_sqlite.gpr.in Fix some build issues with GNAT 2014 May 16, 2014
ado_tests.gpr.in Fix warning when building the tests Nov 11, 2015
config.gpr Change the distrib build options to enable assertion, overflow checks, Jan 2, 2014
config.guess Add build files, copyright notice and README Sep 26, 2010
config.sub Update config.sub to a newer version Apr 16, 2011
configure Rebuild May 22, 2016
configure.in Prepare for release 1.2.0 May 22, 2016
dynamo.xml Update Dec 23, 2015
install-sh Makefile and configure scripts Sep 6, 2010
samples.gpr.in Update the GNAT project file Nov 15, 2015
samples.properties Add some configuration properties for the SQLite database connection … Oct 20, 2013
test-mysql.properties Add the utf8 encoding on MySQL connection Feb 9, 2013
test-sqlite.properties Drop the quotes arround the UTF-8 parameter Dec 31, 2016

README.md

Ada Database Objects

Build Status Test Status Download License Commits

This Ada05 library provides object relational mapping to access a database in Ada05. Most of the concepts developped for ADO come from the Java Hibernate ORM.

This library supports MySQL, SQLite as databases. You need at least one of these databases (or both).

To build ADO, you will need:

You should have installed either MySQL or SQLite before running the configure script. For Windows, please read the file 'win32/README' that gives some installation hints.

Build with the following commands:

   ./configure
   make

The unit tests are built and executed using:

   make test

And unit tests are executed with:

   bin/ado_harness -config test-mysql.properties

or

   bin/ado_harness -config test-sqlite.properties

Samples

The samples can be built using:

      gnatmake -Psamples

Before launching the samples, the database must have been created. For SQLite, use:

      make samples.db

Documentation

The Ada Database Objects sources as well as a wiki documentation is provided on:

https://github.com/stcarrez/ada-ado/wiki

Database Drivers

The MySQL and SQLite development headers and runtime are necessary for building the ADO driver. The configure script will use them to enable the ADO drivers.

MySQL Development installation

      sudo apt-get install libmysqlclient-dev

SQLite Development installation

      sudo apt-get install libsqlite3-dev

For Windows, check win32/README to install the libraries.

Database Creation

Create the tests database by using the Dynamo command. (Dynamo is available at: https://github.com/stcarrez/dynamo) Note: change 'root' and 'password' to a MySQL user that has admin access rights ('create database' and 'grant option' privileges).

      dynamo create-database db/regtests root password

The default database connection string is defined in dynamo.xml. You can also specify the connection string and create the schema by using:

      dynamo create-database db/regtests 'mysql://localhost:3306/ado_test?user=ado' root password

To create manually the database, you can proceed to the following steps:

  1. Create the 'ado_test' database in MySQL
         mysql -u root
         mysql> create database ado_test;
  1. Create the 'ado' user and give the access rights:
         mysql> grant select, insert, update, delete,
                      create, drop, create temporary tables, execute,
                      show view on `ado_test`.* to ado@'localhost';
         mysql> flush privileges;
  1. Create the tables
         mysql> use ado_test
         mysql> source db/regtests/mysql/create-ado-mysql.sql