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