Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • • • • Grundlegende Definitionen Technik Beschaffung vom Informationssystemen Datenorganisation - Einführung - Speicherkonzepte - Datenbank, Datenbanksystem, Relationale Datenbanksysteme - Datenanalyse & Datenbankentwurf (fachlich) • • • • Zentrale Begriffe Entitäten-Beziehungsmodell (ERM) Datendefinition Strukturelle Integritätsbedingungen • Kommunikation Seite 1 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Ziel dieses Vorlesungsabschnitts: - kennen und verstehen der grundlegenden Begriffe aus dem Datenbankbereich (aus Anwendersicht) - kennen und verwenden einer Notation - ERM - für eine Datenmodellierung aus fachlicher Sicht - erkennen und reflektieren der Problematik von Datenorganisation und Datenstrukturierung - kennen und verstehen der grundlegenden Vorgehensweise bei der Entwicklung einer Datenbank - erkennen und reflektieren der wesentlichen Kriterien für einen Datenbankentwurf Seite 2 Wissen, Information, Daten, Zeichen (Wdh.) Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Wissen Information Daten Zeichen Sinnvolle, zweckorientierte Vernetzung von Informationen Zweckorientiertes Wissen (Daten im Kontext) Verarbeitbare, strukturierte Zeichenfolge Syntax = Strukturdefinition Elemente zur Darstellung von Informationen definiert im Zeichenvorrat Seite 3 Suche nach Information Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Methoden und Hilfsmittel abhängig von: a) Informationsart: Zeichenorientierte Informationen: • Strukturierte Daten • Texte Bitorientierte Informationen: • • • • Bilder Grafiken Tonfolgen Videosequenzen b) Speicherort (und Speicherorganisation) Festplatte eigener PC Datenbank-Server Internet Seite 4 Struktur von Daten Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Datenbank: Summe & Integration aller Dateien Datei Datensatz Datenfeld Byte Bit Seite 5 Struktur von Daten - Beispiel Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 6 Struktur von Daten - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Konten datei ... Kunden datei ... Personal Lieferanten Adressdatei datei datei ... ... ... Kontendatei 471133 Bauer Emil 558322 Fritz Winfried 881123 Schmitz Peter 471133 Bauer Emil Oberdorf + 345,00 471133 11110111 1 [Kontonummer] [Ziffer 7] Speichermöglichkeit von 0 und 1 Seite 7 Sequenzielle Datenorganisation Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Position 1 Interne Adresse Kontendatei 471133 Bauer Emil + 345,00 2345678 558322 Fritz Winfried + 2345,00 2345698 881123 Schmitz Peter - 900,00 2345718 236789 Meier Hubert + 444,00 2345738 774378 Keller Mike + 945,00 2345758 - 123,45 2345778 943123 Kuckuck Sebastian ... Seite 8 Indexsequenzielle Datenorganisation Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl ? Seite 9 Indexsequenzielle Datenorganisation - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Index 1 [Konto-Nr] Index 2 [Name] Konto-Nr. Adresse Name Adresse 236789 3456512 Bauer 2345678 471133 2345678 Fritz 4523567 558322 4523567 Keller 6667893 774378 6667893 Meier 3456512 881123 9896554 Schmitz 9896554 ... ... 2345678 471133 Bauer Emil 345,00 Seite 10 Direkte Datenorganisation Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl - direkte Speicherung / gestreut Adressen 471133 Kontendatei Kontensatz Nr 471133 Konto-Nr 558322 Konto-Nr 471133 Konto-Nr 774378 558322 Kontensatz Nr 558322 Kontensatz Nr 774378 774378 ... Seite 11 Daten – transiente Daten Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • flüchtiges Speichermedium (i.d.R. im Arbeitsspeicher) • Ein Prozess (ein ablaufendes Programm) belegt Speicherplätze im Arbeitspeicher • Freigabe der Speicherplätze • Lebenszeit der Daten Prozess gebunden • Kein Zugriff anderer Prozesse • Neustart => Kein Rückgriff auf Daten früherer Programmabläufe Seite 12 Daten – persistente Daten Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Nichtflüchtigen Speichermedium (i.d.R. auf der Festplatte) • Wichtigstes Beispiel für persistente Daten: Dateien • Persistente Daten können durch Prozesse erzeugt, verändert und gelöscht werden • Lebenszeit der Daten nicht an Prozess gebunden • Explizite Löschung => Existenz wird beendet • Zugriff durch verschiedene Prozesse. Beim Neustart eines Programms kann auf die persistenten Daten zugegriffen werden • Neustart => Rückgriff auf Daten früherer Programmabläufe möglich Seite 13 Was ist ein Datenbanksystem Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Erste Definition: Datenbanksystem = Verwaltungskomponente + Speicherungskomponente für persistente Daten, die einem bestimmten Zweck dienen Frage: Warum genügt hierfür nicht das Dateisystem eines Computers? Seite 14 Dateisystem als Datenspeicherung - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 15 Dateisystem als Datenspeicherung Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 16 Datenbankmanagementsystem - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 17 Datenbankmanagementsystem Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 18 Funktionen eines DBMS Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 19 Funktionen eines DBMS - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Dauerhafte Speicherung von Daten • Einrichten einer Datenbank mit Hilfe einer Datendefinitionssprache Beispiel: Einrichten einer Adressdatenbank • Abfragen und Modifikation von Daten mit Hilfe einer Datenmanipulationssprache: Selektieren, Anzeigen, Erzeugen, Verändern, Verknüpfen, Sortieren und Löschen von Daten Beispiel: Eintrag, Änderung einer Adresse • Interaktive Benutzungsoberfläche für Datendefinition und Datenmanipulation (ohne Programmierkenntnisse) • Programmschnittstelle, ermöglicht Datendefinition und Datenmanipulation aus einem Programm heraus Seite 20 Besondere Merkmale eines DBMS Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Datenunabhängigkeit: • Mehrbenutzerfähigkeit: • Konsistenzerhaltung auch bei Systemabsturz Seite 21 Besondere Merkmale eines DBMS - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Datenunabhängigkeit: Das Datenbanksystem macht die Nutzer unabhängig von den computerinternen Speicherstrukturen zur Datenablage • Mehrbenutzerfähigkeit: Störungsfreier paralleler Zugriff auf eine Datenbank durch mehrere Prozesse (auch über Netze) mit Hilfe eines sogenannten Transaktionskonzepts • Konsistenzerhaltung auch bei Systemabsturz Seite 22 Was ist eine Datenbankmanagementsystem Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl ? Seite 23 Was ist eine Datenbankmanagementsystem Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Ein Datenbankmanagementsystem ist ein Softwaresystem, das den Aufbau und den Betrieb eines Datenbanksystem unterstützt Beispiele für handelsübliche Datenbankmanagementsysteme: Access, SQL Server, DB2, ORACLE, Informix, Sybase usw. Seite 24 Was ist eine Datenbankmanagementsystem Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Beispiel zum Unterschied Datenbank - Datenbanksystem: Eine Datenbank mit dem Namen „Adressen“ dient zur Verwaltung von Postadressen und Telefonnummern Die Datenbank „Adressen“ wurde/wird mit Hilfe des Datenbankmanagementsystems „Access“ aufgebaut und betrieben Abkürzungen: DB = Datenbank(system) , DBMS = Datenbankmanagementsystem Seite 25 Aufbau DBMS Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Anwendungsprogramme Systemaufrufe Datenmanipulationssprache Datenbeschreibungssprache DienstProgramme DBMS Datenbasis Seite 26 Relationale Datenbankmanagementsysteme (RDBMS) Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Relationale Datenbankmanagementsysteme (RDBMS) derzeit meistverbreitete Typ von DBMS Fundamentales Konzept: Tabelle (oder „Relation“) Ältere Typen von DBMS („Auslaufmodelle“): Hierarchische DBMS Netzwerk-DBMS Neuere Typen von DBMS: Objektorientierte DBMS Objektrelationale DBMS Seite 27 Weitere Datenbankmanagementsysteme Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 28 Tabellen (Relationen) Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Relationale DBMS speichern Daten in Tabellen (Relationen) • Tabellen: intuitiv verständliche, einfach interpretierbare Art der Repräsentation von Informationen • Die Zeilen der Tabelle (auch Datensätze genannt) repräsentieren gleichartige Informationseinheiten • Datensätze sind gegliedert in Felder (Merkmale oder Attribute) Seite 29 Tabellen (Relationen) Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Die Spalten der Tabelle enthalten gleichartige Felder der Datensätze. Sie sind mit den Namen der Felder überschrieben • In den Spalten stehen Datenwerte von gleichartigem Datentyp mit vordefiniertem Wertebereich (engl. domain) • Abfrage und Einrichtung - SQL (Structured Query Language) Standardisierte Sprache, in der sich Abfragen und andere Datenbankoperationen formulieren lassen. Seite 30 Tabellen Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 31 Felder Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • besitzen einen Felddatentyp, die wichtigsten sind: Zahl Text mit/ohne festgelegte Maximallänge Datum/Uhrzeit • besitzen einen Wertebereich (engl.: domain), z.B. Gültige Matrikelnr die Menge der Kürzel BGB, StGB, VOL etc. • Ein Feld kann indiziert sein, d.h. die Datenbank besitzt für das Feld einen Index = ein (sortiertes) Verzeichnis der Datenwerte und der zugeordneten Datensätze Seite 32 Primärschlüssel Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Primärschlüssel = Feld oder Kombination von Feldern, deren Werte einen Datensatz eindeutig identifizieren Beispiele für Primärschlüssel: Die Matrikelnr der Tabelle Studierende Die Kombination Landeskennzahl, Ortskennzahl, Rufnummer für eine Tabelle Telefonanschluss Primärschlüssel muss minimal sein „künstliche“ Primärschlüssel Seite 33 Tabelle: Zusammenfassung Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Tabelle = Menge von Datensätzen, die in Felder gegliedert sind, mit folgenden Eigenschaften: • eindeutige Tabellenname • Innerhalb Tabelle jeder Feldnamen eindeutig • Die Reihenfolge der Spalten ist bedeutungslos • Die Reihenfolge der Datensätze ist bedeutungslos • Primärschlüssel identifiziert die Datensätze eindeutig • Unbegrenzte Anzahl der Spalten und der Zeilen einer Tabelle Seite 34 Zentrale Probleme beim Datenbankentwurf Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Elementare Werte • Redundanz • Datenintegrität/ -konsistenz • Synchronisation Seite 35 Elementare Werte Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Datenfelder sollen nur elementare Werte enthalten! Problem: ? Lösung: ? Seite 36 Elementare Werte - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Datenfelder sollen nur elementare Werte enthalten! Problem: Suchen, Sortieren Lösung: Nachname und Vorname in unterschiedlichen Feldern speichern Seite 37 Redundanz Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Redundanzen vermeiden wenn (manche) Datensätze und/oder Datenfelder, die in verschiedenen Tabellen benötigt werden, auch mehrfach gespeichert sind Genauer: Redundanz bedeutet, dass Daten ohne Informationsverlust weggelassen werden könnten. Beispiel: in der vorigen Tabelle ?! Seite 38 Vermeidung von Redundanz Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Problem: ? Lösung: ? Seite 39 Vermeidung von Redundanz - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Problem: Speicherplatzbedarf Lösung: Mehrfachspeicherungen auflösen, Tabellen verknüpfen (Beispiel folgt...) Seite 40 Datenintegrität/ -konsistenz Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Datenintegrität und -konsistenz bedeutet, dass alle (mehrfach) gespeicherten Daten an allen Stellen den richtigen Inhalt haben müssen Problem: ? Lösung: ? Seite 41 Datenintegrität/ -konsistenz - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Datenintegrität und -konsistenz bedeutet, daß alle (mehrfach) gespeicherten Daten an allen Stellen den richtigen Inhalt haben müssen Problem: bei mehrfach gespeicherten Daten führt eine Änderung an nur einer Stelle zu uneinheitlichen oder gar falschen Informationen Lösung: Mehrfachspeicherungen auflösen,Tabellen verknüpfen Seite 42 Synchronisation Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Auf Synchronisation muss geachtet werden wenn Daten von mehreren Personen gleichzeitig genutzt werden sollen Problem: gleichzeitige Änderungen Lösung: Zusammenfassung in einer Datenbank und Einrichtung einer Mehrbenutzerumgebung. Seite 43 Datenbankentwurf: Schlechte Beispiele Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Die Speicherung von Kunden und Bestellungen soll modelliert werden: Problem: ? Seite 44 Datenbankentwurf: Schlechte Beispiele - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Die Speicherung von Kunden und Bestellungen soll modelliert werden: Problem: mehrere Bestellnummern in einem Datenfeld schlecht für z.B. Such- oder Sortieroperationen Seite 45 Datenbankentwurf: Schlechte Beispiele Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgelöste Mehrfachwerte in einzelne Felder: Problem: ? Seite 46 Datenbankentwurf: Schlechte Beispiele - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgelöste Mehrfachwerte in einzelne Felder: Problem: nur feste Anzahl Bestellungen (vier Spalten) möglich Seite 47 Datenbankentwurf: Schlechte Beispiele Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Die mehreren Spalten für Bestellungen sind durch Duplizierung der Datensätze aufgelöst Zwei weitere Probleme: ? Seite 48 Datenbankentwurf: Schlechte Beispiele - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Die mehreren Spalten für Bestellungen sind durch Duplizierung der Datensätze aufgelöst Zwei weitere Problem: Redundanz und Inkonsistenzgefahr (Kunden-Code und Firma) Seite 49 Datenbankentwurf: Gute Beispiele Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 50 Datenbankentwurf: Gute Beispiele Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Jetzt liegt keine Redundanz mehr vor, da die Tabellen KUNDEN und BESTELLUNGEN mit Hilfe des Schlüsselfeldes Kunden-Code verknüpft sind. • In der Tabelle BESTELLUNGEN können beliebig viele Bestellungen zu einem Kunde gespeichert werden, die mit zusätzlichen Informationen versehen sind. Seite 51 Aufbau von Datenbanken Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • • • • • Datenanalyse Entitäten-Beziehungsmodell Relationales Modell Datendefinition Strukturelle Integritätsbedingungen Seite 52 Datenbankaufbau: vier Schritte Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl 1. Datenanalyse: Erfassung der zum Aufbau der Datenbank erforderlichen Sachverhalte in der Sprache der künftigen Anwender 2. Entitäten-Beziehungsmodell: Entwurf einer graphischen Repräsentation der darzustellenden Objekte („Entitäten“) und ihrer Beziehungen 3. Umsetzung des Entitäten-Beziehungsmodells durch Definition von geeigneten Tabellen => Datendefinition 4. Füllen der Datenbank mit aktuellen Inhalten Seite 53 Aufbau von Datenbanken Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Semantisches Modell (ERM) Logisches Modell Hierarchisch Netzwerk relational objektorientiert Datenbankdefinition Physische Datenorganisation und Implementierung Seite 54 Datenanalyse: Beispiel Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Mitarbeiter sind Abteilungen unterstellt, wobei keine mehrfachen Zuordnungen vorkommen. • Jedem Projekt wird zentral eine eindeutige Projektnummer zugeteilt. • Mitarbeiter können gleichzeitig mehreren Projekten zugehören, wobei die jeweiligen Prozentanteile erfasst werden. • Jede Abteilung hat genau einen Abteilungsleiter aus dem Kreis der Mitarbeiter Seite 55 Entitäten-Beziehungsmodell (englisch: entity relationship model – ERM) Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl • Entität: Wohlunterscheidbares Objekt der realen Welt oder unserer Vorstellung. Beispiele für Entitäten: Individuen, Gegenstände, Begriffe, Ereignisse. Entitäten gleichen Typs bilden sog. Entitätsmengen und besitzen zusätzlich bestimmte Merkmale. Entitäten besitzen eindeutigen Identifikationsschlüssel. • Beziehung: stellt eine Verbindung zwischen Entitäten dar. Beziehungen gleichen Typs bilden Beziehungsmengen und können zusätzlich bestimmte Merkmale tragen. Seite 56 Grafische Darstellung Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Entitätsmengen Abteilung Beziehungsmengen Unterstellung Mitarbeiter Zugehörigkeit Projekt Seite 57 Beispiel Entität / Entitätsmenge Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Entität: Mitarbeiter Meier, wohnhaft in der Lindenstraße in Liestal Entitätsmenge: Menge aller Mitarbeiter mit Merkmalen Name, Straße und Ort Identifikationsschlüssel: Mitarbeiternummer als künstlicher Schlüssel Mitarbeiter Seite 58 Beispiel Beziehung / Beziehungsmenge Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Beziehung: Mitarbeiter Meier arbeitet zu 70% im Projekt P17 Beziehungsmenge: Menge aller Mitarbeiter-Projekt-Zugehörigkeiten mit dem Merkmal Mitarbeiternummer Identifikationsschlüssel: In einem ERM wird für Beziehungsmengen nicht zwingend ein Identifikationsschlüssel angegeben (näheres siehe relationales Modell) Mitarbeiter Zugehörigkeit Projekt Seite 59 Beziehungstypen / Kardinalitäten Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Beziehungstypen: Abteilung 1 genau ein m, n ein oder mehrere c kein oder ein Unterstellung Mitarbeiter Zugehörigkeit Projekt Seite 60 Beziehungstypen / Kardinalitäten Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl 1-1-Beziehung Einfach/einfach engl.: one-to-one relationship 1-m-Beziehung Einfach/komplex engl.: one-to-many relationship (analog m-1, many-to-one) m-m-Beziehung, Komplex/komplex oft auch m-n-Beziehung genannt, engl.: many-to-many relationship 1 1 m 1 m n Seite 61 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 1: Ergänzen Sie das folgende ER-Modell. Es stellt eine Inventarverwaltung dar. Ordnen Sie die folgenden Attribute den Entitäten zu (Sie dürfen sinnvoll abgekürzte Feldnamen verwenden) und machen Sie die Primärschlüssel kenntlich. Attribute: Amtsbezeichnung, Garantie-Ende, Inventarnummer, Personalnummer, Name, Preis, Raumnummer, Raumgröße, Vorname Stellen Sie zwischen den Objekten Beziehungen her. Beachten Sie dabei folgende Gegebenheiten: • Ein Inventarstück befindet sich immer nur in einem Raum, in einem Raum können mehrere Inventarstücke stehen. • Ein Inventarstück kann von mehreren Mitarbeitern benutzt werden, ein Mitarbeiter kann mehrere Inventarstücke benutzen. • Ein Mitarbeiter ist nur einem Raum zugeordnet, in einem Raum können mehrere Mitarbeiter untergebracht sein. Seite 62 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 2: Erstellen Sie für das nachfolgend beschriebene Beispiel einer CDSammlung selbst ein Entitäten-Beziehungsmodell. Ergänze Sie ggf. beschreibende Attribute: Jede CD besitzt einen eindeutigen Identifikator, einen Titel, sowie ein Erscheinungsjahr Es gibt Urheber, die durch Namen, Vornamen und ein Heimatland genauer definiert sind CDs haben einen oder mehrere Urheber und umgekehrt. Die Urheberschaft kann durch eine Rolle (z.B. Komponist, Interpret) genauer definiert sein. Jeder CD ist genau ein Verlag zugeordnet, der durch einen Namen und die üblichen Adressangaben genauer definiert ist. Seite 63 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 3: Erstellen Sie für das nachfolgend beschriebene Beispiel ein Entitäten-Beziehungsmodell: Ein Pizzabäcker möchte zur rechnergestützten Abwicklung seiner Geschäftsprozesse eine relationale Datenbank einsetzen. In der Datenbank ist die Bestellung der Kunden abzulegen, wobei der Kunde die zu bestellenden Pizzen anhand eines Pizzakataloges auswählen kann. Für jeden Kunden ist zunächst nur eine Bestellung vorgesehen (geringes Vertrauen in die eigene Kochkunst). Eine Bestellung kann eine oder mehrere Pizzen in unterschiedlicher Bestellmenge enthalten. Zum Zwecke der Materialbeschaffung sollen die Pizzen mit ihren Zutatenzusammensetzungen (d.h. Rezepte) gespeichert in der Datenbank vorliegen. Eine Pizza umfasst in der Regel mehrere Zutaten, die bezüglich ihrer Art und der erforderlichen Einsatzmenge von Pizza zu Pizza gleich, aber auch unterschiedlich sein können. Seite 64 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 4: Erstellen Sie für das nachfolgend beschriebene ein EntitätenBeziehungsmodell: Eine Universität hat einen Namen, eine Adresse und eine Telefonnummer, sie exmatrikuliert und immatrikuliert Studenten und öffnet und schließt Institute. Die Universität besteht aus mindestens einem Institut, welche wiederum einen Namen besitzen. Institute berufen Dozenten und können diesen wieder entfernen (Pension). Jedes Institut besitzt mindestens einen Dozenten, ein Dozent gehört mindestens zu einem Institut, ein Dozent ist Teil eines Institutes. Neben dem Dozenten gibt es pro Institut genau eine oder (wenn noch nicht berufen) keine „Chairperson“, diese ist natürlich ebenfalls Dozent. Dozenten bieten Kurse an, welche von Studenten wahrgenommen werden. Ein Kurs lässt sich einem Institut zuordnen, er kann aber auch von mehreren Instituten angeboten werden (bspw. Mathematik I). Studenten und Kurse haben Namen und ID-Nummern. Seite 65 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 5 Erstellen Sie für das nachfolgend beschriebene Beispiel ein Entitäten-Beziehungsmodell: Der Hotzenplotzer Sportverein „Wilde 13“ möchte die Verwaltung der Sponsorgelder seiner Sportler mit einer Datenbank unterstützen. Hierfür soll zunächst ein Datenmodell erstellt werden. Dazu ist folgender Sachverhalt zu modellieren. Jeder Sportler kann von mehreren Sportartikelherstellern gesponsert werden. Ein Sportartikelhersteller kann eine Vielzahl von Sportlern sponsern. Von jedem Sportler wird die Sportlernummer, der Name und das Geburtsdatum gespeichert. Von jedem Sportartikelhersteller wird die Firma gespeichert. Ein Sportartikelhersteller produziert mindestens einen Sportartikel. Ein Sportartikel wird von genau einem Hersteller produziert. Identifiziert wird ein Sportartikel eindeutig über seine Artikelnummer. Ein Artikel kann von einem Sportler benutzt werden und jeder Sportler benutzt mindestens einen Sportartikel. Seite 66 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Aufgabe 6: Ein Fachbereich einer Universität beabsichtigt die Anmeldungen seiner Grundstudiumsklausuren computergestützt durchzuführen. Für jeden Studenten werden folgende personenbezogenen Informationen benötigt: Name, Vorname, Matrikelnummer, Geburtsdatum. Eine Grundstudiumsveranstaltung wird durch die semesterunabhängige Veranstaltungsnummer, Semesterbezeichnung, Name der Veranstaltung und lehrendem Dozenten beschrieben. 1. Stellen Sie den obigen Sachverhalt in einem ERM dar. Kennzeichnen Sie die Kardinalitäten und beschreiben Sie diese in Aussagesätzen. 2. Erweitern Sie das ERM, indem Sie den folgenden Sachverhalt berücksichtigten: Für jeden Student soll die Note für die belegten Grundstudiumsveranstaltungen abgespeichert werden. Seite 67 Lösung I - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Mitarbeiter m 1 zugeordnet Raum Personal-Nr Name Vorname Raum-Nr Raumgröße 1 m befindet sich nutzt n Inventar Inventar-Nr Garantie-Ende m Seite 68 Lösung II - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl m 1 Seite 69 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Lösung III - S Seite 70 Lösung IV -S entlassen Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl 1 Universität 1 1 1 Uni-Nr(P) hat m 1 Institut Ö-Dat. I-Nr(P)1 (m) S-Datum berufen c Ist Chairperson bietet an (c) 1 m Kurse m exmatrikuliert Datum m lehrt K-Nr(P) 1 (m) m m Dozent Doz-Nr(P) besucht m immatrikuliert m Student Datum m Stud-Nr(P) Seite 71 Lösung V - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Sportartikelherstelle r Firmen-Nr m Firma. Name Sitz Sportler sponsorn 1 SportlerNr Nachname Vorname produzieren m Geb.Datum m cm Sportartikel ArtikelNr benutzen m Bezeichnung Seite 72 Datendefinition Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Umsetzung des Entitäten-Beziehungsmodell in Form von Tabellen: Dies ist der Vorgang des Aufbaus des Relationenmodells, der Datendefinition. Festlegung des sogenannten Datenbankschemas, das die Struktur einer Datenbank beschreibt: • Namen der Tabellen und ihrer Felder • allgemeine Eigenschaften zu den Tabellen und Feldern – Wertebereiche – Beziehungen – Integritätsbedingungen Seite 73 Definition Primär- & Fremdschlüssel Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Ein Feld oder eine Feldkombination in einer Tabelle heißt eindeutig, wenn dadurch jeder Datensatz in der Tabelle eindeutig bestimmt ist Eine eindeutige Feldkombination heißt minimal, wenn keines der Felder weggelassen werden kann, ohne die Eindeutigkeit aufzugeben Eindeutige Felder und eindeutige, minimale Feldkombinationen heißen Schlüsselkandidaten Seite 74 Definition Primär- & Fremdschlüssel Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Einer der Schlüsselkandidaten einer Tabelle hat die Rolle des Primärschlüssels. Ein solcher dient dazu, die Datensätze in der Tabelle eindeutig zu bezeichnen Die Werte von Primärschlüsseln können auch in weiteren Feldern auftauchen; solche Felder nennt man Fremdschlüssel. Sie werden verwendet, um von einem Datensatz auf einen anderen Datensatz zu verweisen. So können in Tabellen Beziehungen dargestellt werden Seite 75 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen Regel 1: Jede Entitätsmenge muss durch eine eigenständige Tabelle dargestellt werden: Die Merkmale der Entitätsmenge werden zu Feldern der Tabelle. Es gibt einen Primärschlüssel, in der Regel ist das der Identifikationsschlüssel der Entitätsmenge Seite 76 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen 1 c m 1 m mc Seite 77 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen m mc Seite 78 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen Regel 2: Komplex-komplexe Beziehungsmengen müssen als eigenständige Tabellen definiert werden. Primärschlüssel der Beziehungsmengentabelle ist die Kombination der beiden Fremdschlüssel, ggf. erweitert um weitere Attribute, oder ein anderer Schlüsselkandidat Seite 79 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen 1 m Seite 80 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen Regel 3: Einfach-komplexe Beziehungsmengen können ohne eigenständige Beziehungsmengentabelle definiert werden. Der Primärschlüssel der Entitätentabelle mit einfacher Assoziation (d.h. mit Beziehungstyp 1 oder c) wird als Fremdschlüssel in die andere Entitätentabelle zusammen mit ggf. weiteren Merkmalen der Beziehungsmenge hinzugefügt. Seite 81 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen c 1 Seite 82 Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Überführung eines Entitätenbeziehungsmodells in Tabellen Regel 4: Einfach-einfache Beziehungsmengen können ohne eigenständige Beziehungsmengentabelle definiert werden. Normalerweise wird der Primärschlüssel der Entitätentabelle mit Beziehungstyp 1 als Fremdschlüssel in die andere Entitätentabelle zusammen mit ggf. weiteren Merkmalen der Beziehungsmenge hinzugefügt. Seite 83 Ergebnis Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Seite 84 Strukturelle Integritätsbedingungen Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Eine Datenbank ist integer oder konsistent, falls die zugrundeliegenden Daten fehlerfrei erfasst sind und den gewünschten Informationsgehalt fehlerfrei wiedergeben Es gibt sogenannte strukturelle Integritätsbedingungen, die durch das Datenbanksystem selbst ausgedrückt werden können: Eindeutigkeitsbedingung - Identifikationsschlüssel muss eindeutig sein Wertebereichsbedingung - Merkmale einer Tabelle können nur Datenwerte aus bestimmtem Wertebereich annehmen Referenzielle Integrität: - Jeder Wert eines Fremdschlüssels muss als Schlüsselwert in der referenzierten Tabelle existieren Seite 85 Referenzielle Integrität - S Wirtschafts- und Verwaltungsinformatik Prof. Busbach-Richard SS 2012 Hochschule Kehl Fremdschlüssel dienen dazu, um auf andere Datensätze zu verweisen. Die Werte der Fremdschlüssel dienen dabei als Verweise, auch „Referenzen“ genannt. Ein Verweis auf einen Datensatz wird hergestellt, indem dessen Primärschlüsselwert in das Fremdschlüsselfeld eingetragen wird. Diese Verweise sollen sinn voller weise nicht ins Leere zeigen, d.h. jeder Wert eines Fremdschlüssels sollte als Primärschlüsselwert in der referenzierten Tabelle (d.h. der Tabelle, auf die verwiesen wird) vorkommen. Diese Eigenschaft nennt man Referenzielle Integrität. Seite 86