Databases
UE-SIN.03024

Teacher(s): Curty Simon, Fill Hans-Georg
Level: Bachelor
Type of lesson: Lecture
ECTS: 6
Language(s): English
Semester(s): AS-2022

Databases

Information Systems and Database Systems, Motivation for Using Databases, Level Architecture

Data Modeling

Entity-Relationship Model, Entities, Relationships, Attributes, Dependencies, Generalization, Recursive Relations, Tool-based Modeling Using Bee-Up

Relational Model

Structure and Formal Description, Candidate Keys and Keys, Transformation of the Entity-Relationship Model into the Relational Model

Relational Algebra

Projection, Selection, Set Operations, Cartesian Product, Inner and Outer Joins, Integrity Constraints

Structured Query Language (SQL)

Requirements for Query Languages, Classification of Query Languages, Data Definition, Data Types, Implementation of Integrity Constraints, Min-Max Notation for ER Models for Deriving Integrity Constraints, Data Manipulation, Data Querying, Grouping and Set Operations, View Concept and View-Update Problems

Relational Design Theory

Redundancy and Anomalies, Functional Dependencies, Transitive Closure, Armstrong Axioms, Canonical Cover, Decomposition of Relations, Lossless and Dependency Preserving Decompositions, Derivation of Candidate Keys, Normal Forms

Transactions

Transactions and Transaction Management in Multi-User Environments, Serializability, Precedence Graphs, Preventive and Verifying Synchronization Approaches, Lock Protocols

Security

Permisssion Control and Data Control Language, Data Security and Data Protection

Access to Databases from Programming Languages

Outlook

NoSQL Databases, Blockchains

All course material will be made available via Moodle.


Training aims

You know when to use database systems and what are their benefits.

You are capable of eliciting requirements for database systems using entity relationship models and constraints in the form of the min,max notation and can transform the models into the relational model.

You dispose of extended knowledge about the relational model including relational design theory, the decomposition of relations and the use of normal forms for optimizations.

You are capable of using the language Structured Query Language (SQL) for data definition and data manipulation including constraints.

You are capable of using methods and techniques for multi-user environments including transaction management.


Documentation

Garcia-Molina, H., Ullman, J.D., Widom, J.: Database Systems - The Complete Book, Pearson, 2nd edition, 2013

Kemper, A., Eickler, A.: Datenbanksysteme: Eine Einführung (German), De Gruyter,10th ediition, 2015

Unland, R., Pernul, G.: Datenbanken im Einsatz: Analyse, Modellbildung und Umsetzung (German), DeGruyter, 2014

Elmasri, R., Navathe, S.: Conception et architectures des bases de données, 4th edition, Pearson, 2004