This book presents a systematic overview of the interaction between logic programming and database systems. Merging these two technologies permits new types of systems which extend the frontiers of computer science and open up new applications, such as deductive databases, knowledge base management systems, and expert database systems. The book opens with an overview and an introductory review, then is divided into three parts devoted to - the coupling of Prolog with relational databases, - the precise definition of the Datalog language, and - the description of query optimization techniques and extensions of Datalog. A closing chapter reviews the main projects on the integration of logic programming and databases, including LDL, Nail! and the Fifth Generation Project. The presentation achieves a balance between theoretical and technological issues, by providing a careful introduction to the underlying paradigms and their theoretical foundations, and by stressing the problems involved in achieving efficiency when interfacing logic programming formalisms with large databases. The book is thus suited for members of both the database and logic programming communities. The authors use a tutorial style complete with examples and exercises to introduce students as well as researchers to this developing field.