Datalog is a database programming language for deductive databases that syntactically and semantically similar to Prolog.

It goes back to the work of Herve Gallaire and Jack Minker in 1978.

Datalog differs from Prolog in the following points:

An advantage over relational calculus is the ability to define recursion without a given recursion depth. The termination of the recursion can be achieved by deductive seclusion, so by reaching the smallest fixed point.

Currently, researchers are developing based on Datalog, which is suitable for extreme parallelism, the programming boom for the efficient utilization of computing clouds.

Example Program

% Cologne is connected to duesseldorf connected ( cologne, duesseldorf ). % Duesseldorf is connected with dortmund connected ( duesseldorf, dortmund ). % Hannover is connected with dortmund connected (hannover, dortmund ). % When X is combined with Y, then Y X connected to (Y, X ): - associated (X, Y). % X is linked to Z, if X is linked with any Y, in turn, is connected to Z connected to (X, Z ): - associated ( X, Y), connected (Y, Z). % Question: Is cologne connected to hanover? ? - Connected ( cologne, hanover ). Web Links

  • Datalog Education System


. QL | CQL | CODASYL | COQL | D | DMX | Datalog | ISBL | LDAP | MQL | MDX | OQL | OCL | Poliqarp Query Language | QUEL | SMARTS | SPARQL | SQL | SuprTool | TMQL | XQuery | XPath | YQL

  • Database language
  • Logic programming