Aims
Databases are at the heart of modern commercial application development. Their use extends
beyond this to many applications and environments where large amounts of data must be stored
for efficient update and retrieval. Their principles and fundamental techniques are being
extended today to the Web and to novel kinds of data, like XML. The purpose of this course
is to provide an introduction to the principles of database systems. We begin by studying
database design, covering the entity relationship model. We will then cover the relational
data model, relational algebra and SQL. As a newer model, we will cover XML and some XML
query languages. We will take a deeper look at database query languages and their connection
with logic and with complexity classes.