Datenbanksysteme Di. 29.05.2012 – 20H00 Inhaltsübersicht • Beispiele / Motivation • Informationssysteme • Datenbank- und Datenbankmanagementsysteme • Relationale Datenbanken • Datenmodelle • Programmierung in SQL • Datenbankentwurf Literatur Alfons Kemper, André Eickler: Datenbanksysteme – Eine Einführung, 5. Aufl. Oldenbourg München 2004. Ramez Elmasri, Shamkant B. Navathe: Grundlagen von Datenbanksystemen - Ausgabe Grundstudium/ Bachelorausgabe, 3. Aufl. Pearson Studium 2005. Was ist eine Datenbank? “A database system is basically just a computerized record-keeping system... with four major components: data, hardware, software and users.“ (C. J. Date) Eine systematisch strukturierte Sammlung von Daten Ermöglicht die Eingabe von Daten Ermöglicht die Verwaltung von Daten Beispiele E-Commerce • E-Shops E-Learning Geo-Systeme • Navigationssysteme • Google-Maps Software-Anwendungen • Bibliothek: Ausleihsystem Beispiel: Ausleihsystem Programm / Website Benutzer Datenbank Buch Name Buch# … Buch# Name … Ahmed BN872 … BN872 DBS … Hassan AJ302 … AJ302 SQL … Datenbanksystem Programm 1 … Programm n Datenbankmanagementsystem Datenbank Datenbanksystem Ein Datenbanksystem (DBS) besteh aus einer oder mehreren Datenbanken (DB) und einem Datenbankmanagementsystem (DBMS, DBVS) Datenbanksystem Datenbank (DB) = Sammlung von Daten Datenbankmanagementsystem (DBMS) = Programm zur Kontrolle des Datenzugriffs Datenbanksystem (DBS) = DB + DBMS Informationssystem Information: • Ahmed hat das Buch BN872 ausgeliehen Daten: • Benutzer: Name, Buch# • Buch: Buch#, Name Metadaten: • Beschreiben die Daten • Wertebereiche Benutzer Name Buch# … Ahmed BN872 … Hassan AJ302 … Buch Buch# Name … BN872 DBS … AJ302 SQL … Datenbankmanagementsystem Schnittstelle Liefert die Beschreibung der Datenbank Zugriffsrechte der Nutzer verwalten Konkurrierende Zugriffe synchronisieren Geänderte Daten persistieren Nutzer und ihre Rechte verwalten Fehlertoleranz Datenbank Eine Datenbank ist ein integrierter und persistenter Bestand an Daten mit seinen Metadaten. • Integriert: Einhaltung von Regeln zu Wertebereichen und Beziehungen. • Persistent: Dauerhafte Speicherung • Metadaten: Informationen über die Daten und ihre Nutzung. Anforderungen an Datenbanken • • • • • • • Gleichzeitige Benutzung, Mehrbenutzerbetrieb Sicherung der Daten Redundanzfrei Verwaltung großer Datenmengen Zugriffskontrolle Persistenz, dauerhafte Speicherung Integration in Programmiersprachen Frage?