htw saar
Zurück zur Hauptseite

Version des Moduls auswählen:
XML-Code

Database Construction

Modulbezeichnung: Database Construction
Studiengang: Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021
Code: DBWINFO-250
SWS/Lehrform: -
ECTS-Punkte: 8
Studienjahr: 2
Pflichtfach: ja
Arbeitssprache:
Deutsch
Prüfungsart:
Klausur (150 Minuten, davon 70 Min. für Datenmodellierung und je 40 Min. für Prozedurale Datenbankprogrammierung und für Datenbankadministration)
Pro Bearbeitungsminute ist ein Punkt zu vergeben.

[letzte Änderung 06.10.2021]
Verwendbarkeit / Zuordnung zum Curriculum:
DBWINFO-250 Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021, 2. Semester, Pflichtfach
Arbeitsaufwand:
Der Gesamtaufwand des Moduls beträgt 240 Arbeitsstunden.
Empfohlene Voraussetzungen (Module):
Keine.
Als Vorkenntnis empfohlen für Module:
Modulverantwortung:
Prof. Dr. Dieter Hofbauer
Dozent: Prof. Dr. Dieter Hofbauer

[letzte Änderung 01.09.2021]
Lernziele:
Datenmodellierung:
 
Die Studierenden verstehen die Grundidee der Informationsorganisation und -verwaltung im relationalen Datenmodell und sind mit den Grundbegriffen der Relationenalgebra vertraut. Sie kennen
Vor- und Nachteile der Datenhaltung mit relationalen bzw. nichtrelationalen Ansätzen. Die Studierenden sind in der Lage, das Entity-Relationship-Modell in der Entwurfsphase der Anwendungsentwicklung einzusetzen, sie können ein gegebenes ER-Modell in ein passendes Datenbankschema transformieren, und sie verstehen grundlegende Konzepte der Datenmodellierung wie Typkonzept, Integritätsbedingungen und Normalisierungseigenschaften. Die Studierenden kennen
die Einteilung der Datenbanksprache SQL in ihre Teilsprachen und können gemeinsame Strukturen und Analogien aufzeigen. Sie verfügen über detaillierte Kenntnis der einzelnen SQL-Befehle und erkennen Gemeinsamkeiten und Unterschiede analoger Aktionen auf unterschiedlichen Ebenen. Die Studierenden verstehen die Funktionsweise und die Auswirkungen von Transaktionen nach dem ACID-Prinzip und können SQL-Transaktionsanweisungen für typische Anwendungsfälle
einsetzen. Sie besitzen umfassende Kenntnisse in SQL-Abfragen sowie praktische Erfahrungen
mit deren Einsatz.
 
Prozedurale Datenbankprogrammierung:
 
Die Studierenden kennen die wesentlichen Elemente von 3GL-Sprachen im Vergleich zu 4GLSprachen wie Variablen und Kontrollstrukturen. Sie verstehen den Unterschied zwischen datenbankinternen Programmen und einer Implementierung „von außen“. Sie Studierenden können
selbst definierte Datenbankfunktionen und -prozeduren mit Hilfe einer prozeduralen Sprache wie
PL/pgSQL programmieren. Sie sind in der Lage, Triggerprozeduren in einer prozeduralen Sprache
zu definieren und mit Hilfe von Triggern zu aktivieren.
 
Datenbankadministration:
 
Die Studierenden kennen die wesentlichen Aufgabenbereiche eines Datenbankadministrators wie
Datensicherheit, Unterstützung von Entwicklern und Anwendern, Leistungsüberwachung und -verbesserung sowie Datensicherung und -wiederherstellung, und sie sind in der Lage, grundlegende
Administrationsaufgaben zu übernehmen. Sie verstehen den Aufbau eines Datenbankmanagementsystems und den Zusammenhang zwischen der logischen und der physikalischen Sicht sowie
die sich daraus ergebenden Folgerungen aus dem Blickwinkel des Administrators. Die Studierenden wissen, welche Anforderungen an Sicherheit und Zuverlässigkeit eines Datenbanksystems
gestellt werden und kennen Methoden und Werkzeuge, um diese Anforderungen umzusetzen.

[letzte Änderung 06.10.2021]
Inhalt:
Datenmodellierung:
 
1. Grundlagen: Informationen, Daten, Datenbanken
2. Datenbankmanagementsysteme (DBMS): Prinzipien und Aufgaben; DBMS-Produkte;
   Drei-Ebenen-Architektur; Nutzergruppen; historische Entwicklung
3. Relationales Datenmodell: Relationen und Relationenalgebra
4. Datenbankentwurf: Entity-Relationship-Modellierung; Transformation von ER-Modell in relationales DB-Schema; ER-
   Diagramme versus UML-Klassendiagramme; Normalformen
5. SQL: Definition und Manipulation von Tabellen und Datensätzen mit DDL- und DML-Anweisungen (Anlegen, Ändern,
   Löschen); Analogien zwischen DML und DDL; Integritätsbedingungen
6. Transaktionen: ACID-Prinzip; SQL-Transaktionsanweisungen
7. SQL-Abfragen: Selektion und Projektion; Gruppierung; Aggregatfunktionen; Mengenoperationen; Subselects; temporäre
   Tabellen; Abarbeitungsreihenfolge
8. Sichten; Rechtevergabe
 
Prozedurale Datenbankprogrammierung:
 
1. Prozedurale Sprachen in Datenbanksystemen im Überblick; wesentliche Merkmale und
   Unterschiede zwischen 3GL-Sprachen und SQL
2. Prozedurale Datenbankprogrammierung am Beispiel der Sprache PL/pgSQL
3. Grundlegende Syntaxelemente
4. Prozeduren und Funktionen (Aufrufparameter, Rückgabewerte und deren Typen)
5. Imperative Sprachkonzepte: Fallunterscheidungen und Schleifen
6. Cursor (implizit, explizit, parametrisiert)
7. Ausnahmebehandlung
8. Selbst definierte Aggregat- und Fensterfunktionen
9. Triggerprozeduren und Trigger (auslösende Ereignisse, Zeitpunkt und Häufigkeit der Ausführung, Einfluss auf das
   auslösende Ereignis), Anwendungsbeispiele
 
Datenbankadministration:
 
1. Datenbankarchitektur im Überblick (Client/Server, Netzwerk, Komponenten, Prozesse, Dateien, Tablespace,
   Konfigurationsoptionen, Werkzeuge, logische Hierarchien)
2. Datenbanktuning (Konfiguration/Dimensionierung, Indizierung, Abfrageoptimierung)
3. Benutzer, Rollen, Rollenattribute und Privilegien für wesentliche Datenbankobjekte
4. Backupkonzepte (volles/inkrementelles Backup, Offline-/Online-Backup, physikalisches/logisches Backup)
5. Transaktionen aus administrativer Perspektive (u. a. Isolationsgrade)
6. Backup/Recovery im Detail (Befehle/Ablauf, Recovery nach physikalischen/logischen Fehlern),
   Unterstützungphysikalischer Backups durch Barman (Backup and Recovery Manager)
7. Wartungsaufgaben (z. B. Tabellenstatistiken)

[letzte Änderung 06.10.2021]
Weitere Lehrmethoden und Medien:
Vorlesung mit integrierter Übung

[letzte Änderung 06.10.2021]
Literatur:
Datenmodellierung:
 
• Elmasri, Ramez A./Navathe, Shamkant B.: Grundlagen von Datenbanksystemen; Pearson Studium, München
• Geisler, Frank: Datenbanken – Grundlagen und Design; mitp; Heidelberg u. a.
• Kudraß, Thomas (Hrsg.): Taschenbuch Datenbanken; Hanser; München
• Fröhlich, Lutz: PostgreSQL 10 – Praxisbuch für Administratoren und Entwickler; Hanser; München
• Saake, Gunter/Sattler, Kai-Uwe/Heuer, Andreas: Datenbanken – Konzepte und Sprachen;
mitp; Frechen
 
Prozedurale Datenbankprogrammierung:
 
• Feuerstein, Steven/Pribyl, Bill/Dawes, Chip: Oracle PL/SQL – kurz & gut; O´Reilly; Köln
• Scherbaum, Andreas: PostgreSQL – Datenbankpraxis für Anwender, Administratoren und Entwickler; Open Source Press;
  München
• Papakostas, Ioannis: Datenbankentwicklung mit PostgreSQL 9; TEIA; Kelkheim
 
Datenbankadministration:
 
• Eisentraut, Peter/Helmle, Bernd: PostgreSQL Administration; O´Reilly; Köln
• Fröhlich, Lutz: PostgreSQL 10 – Praxisbuch für Administratoren und Entwickler; Hanser; München

[letzte Änderung 06.10.2021]
[Wed Oct  5 10:27:43 CEST 2022, CKEY=adc, BKEY=aswwinf, CID=DBWINFO-250, LANGUAGE=de, DATE=05.10.2022]