Index / 001 EN

Computer Science

Computer Science

Foundations of Databases

Serge Abiteboul; Richard Hull; Victor Vianu

An advanced database theory text on relational queries, dependencies, recursion and expressive power through logic and formal proofs.

Prerequisites: An introductory database course, discrete mathematics, first-order logic and basic computability are recommended. Be comfortable with relations, quantifiers, proof and complexity classes before pursuing the later chapters.

Difficulty Level
Advanced
Academic Level
Graduate
database theoryquery languagesdependencies

01 / Reading Guide

Reading Guide

Relational databases: choose a book and audit the result grain

Compare database design, systems and theory texts; use original SQL cases to distinguish keys, missing values, empty matches and join multiplicity.

Study route and exercise: University Reading List editorial project.

Who this book is for

For graduate students and advanced undergraduates studying the mathematical foundations of databases. Readers should already understand basic relational design and querying. The emphasis is on explaining what query languages can express, when constraints imply other constraints and how formal models support database reasoning, rather than administering a particular product.

Prerequisites

An introductory database course, discrete mathematics, first-order logic and basic computability are recommended. Be comfortable with relations, quantifiers, proof and complexity classes before pursuing the later chapters.

What it covers

Relational models and conjunctive queries lead into algebra, calculus, dependencies, schema design, Datalog, recursion, negation, expressive power and complexity. Further chapters consider incomplete information, complex values, object databases and dynamic aspects. The structure supports a focused route through query theory or a longer study of database foundations.

How to use it

For each language, express the same small query in two formalisms and test both on a carefully chosen finite database. Keep syntax, semantics and evaluation complexity separate. Work a chase example by hand, noting the dependencies used at every step. When a theorem claims equivalence, identify its restrictions and construct a counterexample after relaxing one restriction. Write proofs for small instances before moving to general results, and distinguish theoretical expressiveness from the features of a contemporary database engine.

Edition and sources

The authors’ migrated Webdam site supplies a complete 678-page online draft and chapter files. It permits a personal copy but explicitly forbids redistribution and reposting. This authorized access is not a Creative Commons license, and the online draft is not assigned an unverified current print identifier.

Open the official resource

Edition and learning check

This record identifies the complete authors’ online draft, not a newly verified print edition; no print year or ISBN is added. The authorized source’s previously recorded terms allow personal copies but prohibit redistribution or reposting, so this is not a general Creative Commons licence. The endpoint could not be retrieved during the 2026-11-04 check; confirm access before relying on it as your only reading route. Preparation should include a database course, quantifiers and proof. Test readiness by explaining a query as a relation and distinguishing logical expressibility from the behavior of a particular SQL engine.

Source checked (2026-11-04).