Duro is a relational free and open source database library written in C. It is based on the principles laid down in the book Foundation for Future Database Systems: The Third Manifesto by C. J. Date and Hugh Darwen.
The goal of the Duro project is to create a library which is as compliant with the proposed database language D as it is possible for a C library. This library is supposed to serve as a basis for a truly relational database management system (TRDBMS).
- Tuples and tables (relvars).
- Relational algebra: RENAME, select (restrict), project, EXTEND, JOIN, SEMIJOIN, UNION, INTERSECT, MINUS, SEMIMINUS, SUMMARIZE PER, DIVIDEBY PER, WRAP, UNWRAP, GROUP, and UNGROUP.
- Virtual tables (views).
- Locking and nested transactions.
- Duro tables are true sets -- uniqueness of tuples (rows) is always enforced. When creating real tables, at least one candidate key must be supplied. A candidate key may be empty.
- User-defined types (including type constraints) and operators.
- Declarative integrity.
- Tcl interface, including support for relational expressions in Tutorial D syntax and operators implemented in Tcl ("stored procedures").
- Simple GUI admin tool.
xs Duro is implemented on top of the Berkeley DB database library.
5 September 2006
Leaders and contributors
Resources and communication
|Developer||VCS Repository Webview||http://duro.cvs.sourceforge.net/duro/|
|Developer||Mailing List Info/Archive||http://lists.sourceforge.net/mailman/listinfo/duro-devel|
|Bug Tracking||VCS Repository Webview||http://sourceforge.net/tracker/?group_id=80719&atid=560790|
|Help||Mailing List Info/Archive||http://lists.sourceforge.net/mailman/listinfo/duro-announce|
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.