Eiffel DB |
You are not logged in [Login]
|
What is it?
Eiffel DB is an Object Database completely written in Eiffel. The following SQL-Like query should show you how powerful and open Eiffel DB is.
SELECT
diff(10,table1.id) AS difference, *
FROM
(SELECT table1 AS sub_table1 FROM table1), table1, table2.relatedobject
WHERE
equal(table1.id, table2.relatedobject.tab1_id)
AND
smaller(table2.somefunction("test"),"123")
ORDER BY
sub_table1.someotherfunction("xyz") DESC,
table2.id
LIMIT
1,5
As there is no networking code, Eiffel DB may only be used as Library in an application.
All parts of Eiffel DB have been written by Thomas Lenherr and Christoph Studer.
Features
- SQL-Like query language
- SELECT and INSERT
(No UPDATE or DELETE yet. Would you like to extend it? Mail me your datasources.)
- Unlimited subqueries
- Joins
- Object Oriented
- You have table of objects (of same type), not table of fields
- Result sets are rows of (one or more) objects
- Every type may have its own implementation as Eiffel class.
- Every type defines its properties, predicates and functions which may be used in all parts of SELECT queries.
- A
type may define a so called "relation". The objects return their
related object (of same or different type) on their own. This prevents
you from writing the same joins and WHERE parts all the time.
- Well designed
Download
- Download the ZIP-Archive containing:
Feel free to browse the source code. Drop us a message if you'd like to use it in your software!
- complete source code
- example implementations for traffic
- some structure charts
- some documents (English or German)
- Download Traffic 1.0 (License)
The example implementation classes rely on this piece of software.
Links
|