Zur Seitennavigation oder mit Tastenkombination für den accesskey-Taste und Taste 1 
Zum Seiteninhalt oder mit Tastenkombination für den accesskey und Taste 2 
Startseite    Anmelden     
Logout in [min] [minutetext]

Datenbankprogrammierung - Detailansicht

  • Funktionen:
  • Zur Zeit kein Belegungszeitraum aktiv.
Grunddaten
Veranstaltungsart Seminar / Wahlfach Langtext
Veranstaltungsnummer 1907 Kurztext
Semester SoSe 2021 SWS 2
Erwartete Teilnehmer/-innen Max. Teilnehmer/-innen
Rhythmus Jedes Semester Studienjahr
Hyperlink  
Sprache Deutsch
Belegungsfrist Hauptbelegungszeitraum 01.03.2021 - 26.03.2021

Belegpflicht
Termine Gruppe: [unbenannt] iCalendar Export für Outlook
  Tag Zeit Rhythmus Dauer Raum Raum-
plan
Lehrperson Status Lernziele fällt aus am Max. Teilnehmer/-innen
Einzeltermine anzeigen
iCalendar Export für Outlook
Sa. 08:00 bis 17:00 Einzel am 20.03.2021          
Einzeltermine anzeigen
iCalendar Export für Outlook
Sa. 08:00 bis 17:00 Einzel am 27.03.2021          
Gruppe [unbenannt]:
Zur Zeit kein Belegungszeitraum aktiv.
 


Zugeordnete Person
Zugeordnete Person Zuständigkeit
Deschler, Georg
Laut SPO für
Abschluss Studiengang Semester Kategorie ECTS
Bachelor Informatik/Elektrotechnik PLUS 4 - 4 Wahlfach 3
Bachelor Angewandte Informatik 6 - 7 Wahlfach 3
Zuordnung zu Einrichtungen
Bachelorstudiengang Angewandte Informatik
Inhalt
Inhalt 1 Allgemein .......................................................................................................................... 5
1.1 Überblick ................................................................................................................... 5
1.1.1 Zugriff auf Datenbanken: ................................................................................... 5
1.1.2 Zusatzprogramme innerhalb von Datenbanken: ................................................ 6
1.2 Motivation für Datenbankprogrammierung ................................................................ 6
1.3 Beziehungen zu anderen Fächern ............................................................................ 7
1.4 Bestandteile einer DB-Anwendung............................................................................ 8
1.5 Datenbank Architekturen ........................................................................................... 9
1.6 Fragestellungen bei Datenbankprogrammierung ..................................................... 11
2 SQL – eine Wiederholung? ............................................................................................. 12
3 Probleme bei Datenbankprogrammierung ...................................................................... 22
3.1 Die Coddschen Regeln ........................................................................................... 22
3.2 Der „Impedance Mismatch“ ..................................................................................... 24
3.2.1 Was ist der Impedance Mismatch? .................................................................. 24
3.2.2 Objekte versus Tabellen .................................................................................. 25
3.2.3 Die unterschiedlichen Paradigmen in der Praxis ............................................. 26
3.3 Cursor-Konzept ....................................................................................................... 27
3.4 Andere Lösungsansätze zur Überwindung des Impedance Mismatch ..................... 28
4 Zugriff auf Datenbanken ................................................................................................. 29
4.1 Allgemein ................................................................................................................ 29
4.2 Verarbeitung einer SQL-Anfrage ............................................................................. 30
5 Datenbankprogrammierung innerhalb der Datenbank - Stored Procedures & Trigger ..... 31
5.1 Was sind Stored Procedures? ................................................................................. 31
5.2 Wozu dienen Stored Procedures? .......................................................................... 31
5.3 Wer bietet Stored Procedures? ............................................................................... 31
5.4 Wann sollten Stored Procedures verwendet werden? ............................................. 32
5.5 Stored Procedures / Trigger (bei Oracle) ................................................................ 32
5.5.1 Allgemein ........................................................................................................ 32
5.5.2 Aufbau von Stored Procedures........................................................................ 33
5.5.3 Beispiel (PL/SQL) ............................................................................................ 33
5.5.4 Ausnahmebehandlung .................................................................................... 34
5.5.5 Aufbau von Triggern (PL/SQL) ........................................................................ 35
5.5.6 Beispiel (PL/SQL) ............................................................................................ 35
5.6 Erstellen von Stored Procedures ............................................................................. 36
5.7 Aufruf und Ablauf von Stored Procedures ............................................................... 37
5.7.1 Aufruf einer Stored Procedure aus dem Client-Programm ............................... 37
5.7.2 Stored Procedure auf dem DB-Server ............................................................. 37
6 Java Database Connectivity (JDBC) ............................................................................... 38
6.1 Allgemein ................................................................................................................ 38
6.2 Grundstruktur eines JDBC-Programms ................................................................... 38
6.3 Einbinden der JDBC-Klassen .................................................................................. 39
6.4 Architektur ............................................................................................................... 40
6.5 Verbindungsaufbau zur Datenbank ......................................................................... 42
6.5.1 Laden eines JDBC Treibers ............................................................................ 44
6.5.2 Verbindung zur Datenbank: Connection Objekt erzeugen ............................... 44
6.6 Datenzugriff mittels SQL ......................................................................................... 46
6.6.1 Dynamisches SQL mit Statments .................................................................... 46
6.6.2 Vorkompiliertes SQL ....................................................................................... 47
6.7 Ergebnisverarbeitung mittels ResultSet .................................................................. 50
6.7.1 ResultSets ....................................................................................................... 50
6.7.2 Ergebnisabfrage .............................................................................................. 51
6.7.3 Datensätze ändern .......................................................................................... 51
6.7.4 Datensätze einfügen ....................................................................................... 52
6.7.5 Batch Updates ................................................................................................. 53
6.8 Fehlerbehandlung ................................................................................................... 55
6.8.1 Allgemein ........................................................................................................ 55
6.8.2 Abfangen von Fehlern und Ausnahmen .......................................................... 57
6.8.3 Abfragen von Warnungen................................................................................ 58
6.9 Verbindungsabbau .................................................................................................. 59
6.10 Transaktionssteuerung............................................................................................ 59
6.11 Fazit ........................................................................................................................ 60
6.12 Erweiterte Themen .................................................................................................. 61
6.12.1 JNDI & Connection Pooling ............................................................................. 61
7 DAPRO - Best Practices ................................................................................................. 63
7.1 DAO – Data Access Objects ................................................................................... 64
7.1.1 Allgemein: ....................................................................................................... 65
7.1.2 Am Beispiel: Kundeninformation...................................................................... 67
7.1.3 Vorteile ............................................................................................................ 70
Literatur http://fh.atbits.de
[1] SQL. Der Schlüssel zu relationalen Datenbanken
- Gregor Kuhlmann, Friedrich Müllmerstadt
ISBN: ISBN-10: 3499612453, ISBN-13: 978-3499612459
Preis: 9,90 EUR
[2] Weitere Informationen zu Joins finden Sie unter
- Satya Komatineni
http://www.onjava.com/lpt/a/4443#1 oder
http://www.onjava.com/pub/a/onjava/2004/01/07/SQLJoins.html
[3] Vorlesung Datenbanken
- Mario Jeckle
http://www.jeckle.de/vorlesung/datenbanken/script.html
[4] Vorlesung eBusiness
- Mario Jeckle
http://www.jeckle.de/vorlesung/eBusinessEng/index.html
[5] Vorlesung Datenbank-Anwendungen
- Mario Jeckle
http://www.jeckle.de/vorlesung/DB-Anwendungen/index.html
[6] Vorlesung XML
- Mario Jeckle
http://www.jeckle.de/vorlesung/xml/index.html
[7] Impedance Mismatch
- Alexandra Schäfer
http://www.sigs.de/publications/os/2003/03/schafer_OS_03_03.pdf
[8] Trigger Happy
- Martin Rennhackkamp
http://www.dbmsmag.com/9605d17.html
[9] Stored Procedures for Java Programmers
- Nic Ferrier
http://www.onjava.com/pub/a/onjava/2003/08/13/stored_procedures.html
[10] Struts Best Practices
- Vic Cekvenich, Wolfgang Gehner
ISBN : 3-89864-284-4
Preis : 32,00 EUR
http://www.dpunkt.de/buecher/struts.html
[11] Oracle PL/SQL Tutorial - Die Programmiersprache von Oracle - Ein Nachschlagewerk auf Basis von
Beispielen
- TAKTUM Informatik GmbH
http://www.datenbank-plsql.de/
[12] PL/SQL
http://www.orafaq.com/faq/plsql/
[13] PL/SQL User's Guide and Reference 10g Release 1 (10.1)
Copyright © 1996, 2003 Oracle Corporation
http://www.oracle-10g.de/oracle_10g_documentation/appdev.101/b10807/toc.htm
[14] Design Patterns. Addison-Wesley Professional, 1995,
- Erich Gamma et al.
ISBN : 0201633612
Entwurfsmuster. Addison-Wesley, 2004,
- Erich Gamma et al.
ISBN 3827321999
[15] Weitere Links unter : http://fh.atbits.de/ => weiterführende Links
[16] Struts Best Practices – Die Erstellung komplexer Webanwendungen, 2004
- Vic Cekvenich, Wolfgang Gehner
ISBN: 3898642844
Preis : 32,00 EUR
[17] DAO
http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html
[18] Core J2EE Patterns: Best Practices and Design Strategies 2nd Edition
- Deepak Alur, John Crupi and Dan Malks
Publisher: Prentice Hall / Sun Microsystems Press
ISBN:0131422464; 2nd Edition (June, 2003)
http://www.corej2eepatterns.com/Patterns2ndEd/DataAccessObject.htm
[19] http://www.torsten-horn.de/techdocs/sw-patterns.htm
Lernziele

Die in der Vorlesung Datenbanksysteme erworbenen Grundkenntnisse werden erweitert. Dabei steht die Anwendungsprogrammierung im Vordergrund. Die Teilnehmer können nach der Vorlesung: Verschiedene APIs zur Anbindung von Anwenderprogrammen an Datenbanken verwenden: Schwerpunkt bildet die Programmierung mit Java und JDBC. Überwindung des Impedance Missmatch: Abbildung von relationalen Datentupeln auf Objekte in Java, Data Access Object Pattern

Verwendung von NoSQL-Datenbanken wie MongoDB und Redis neben relationalen Datenbanken.

Voraussetzungen Programmieren 1/2
Datenbanksysteme (SQL, relationale Datenbanken)
Objektorientierte Programmierung
Leistungsnachweis

PA benotet


Strukturbaum
Keine Einordnung ins Vorlesungsverzeichnis vorhanden. Veranstaltung ist aus dem Semester SoSe 2021 , Aktuelles Semester: WiSe 2021/22