Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 1 / 7 lfd. Nr.: Inhaltsverzeichnis Aufgabe 1 ...................................................................................................................................................2 Aufgabe 2 ...................................................................................................................................................3 2-Schichten-Architektur ......................................................................................................................................3 3- Schichten-Architektur .....................................................................................................................................3 Zusammenhang ...................................................................................................................................................4 Aufgabe 4 ...................................................................................................................................................4 Aufgabe 4.1, 4.2, 4.3 ...........................................................................................................................................4 Aufgabe 4.4 .........................................................................................................................................................5 Aufgabe 5 ...................................................................................................................................................6 Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 2 / 7 lfd. Nr.: 1. Überlegen und recherchieren Sie im Team, welche Personen mit Datenbanksystemen arbeiten und in welche Gruppen diese eingeordnet werden können. Finden Sie 3-6 verschiedene Gruppen und erklären Sie deren Aufgaben. Vergleichen Sie dann mit dem Lösungsblatt und beschreiben Sie eventuelle Unterschiede zu Ihren gefundenen Gruppen. Endbenutzer: - einfache Anwender - Zugang über ein Anwendungsprogramm - Wissen oft nicht, dass im Hintergrund eine Datenbank läuft Programmierer/Informatiker: - Implementieren komplexe DB-Aufgaben in Anwendungsprogrammen - Fundierte Kenntnisse in SQL Datenbankdesigner: - Spezialist für Problemanalyse (z.B. Anforderungsbeschreibungen, ER-Diagramm) - Entscheidet über interne Ebene und über die Datenstruktur Datenbankadministrator: - vergibt Zugangsrechte - überwacht DB Benutzung, Sicherheit, Performance und Backups - hat als einziger Zugriff auf alles DAU (Dümmster anzunehmender User) Die von mir gefundene Lösung ist (logischerweise) identisch zu dem Lösungsblatt. Schüler haben noch weitere interessante Gruppen gefunden: Hacker - Macht dem Admin das Leben schwer - Will die Daten der Datenbank downloaden, manipulieren oder löschen Datenschutzbeauftragter - Sorgt für die Einhaltung der gesetzlichen Regeln Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 3 / 7 lfd. Nr.: 2. Recherchieren Sie die Begriffe 2-Schichten-Architektur und 3-Schichten-Architektur. Begründen Sie welcher Zusammenhang zwischen Datenbanken und diesen zwei Begriffen besteht. Geben Sie jeweils ein Anwendungsbeispiel an. 2-Schichten-Architektur Die 2-Schichten-Architektur ist die typische Entwurfsarchitektur eines Client-Server Systems. Dabei greift die Darstellungsschicht direkt auf die Datenhaltungsschicht zu. Ein solches System ist leicht zu entwickeln und effizient zu betreiben, da die Rechenkapazität bei verteilten Systemen beim Client liegt. Durch den direkten Datenbankzugriff besteht aber für die Datenbank keine Datensicherheit. Ein Beispiel ist Microsoft Access, welches dem Benutzer eine Oberfläche bereitstellt und die getätigten Eingaben als SQL-Befehle an die Datenbank im Hintergrund weiterleitet. Quelle: http://upload.wikimedia.org/wikipedia/commons/3/33/2-Tier.jpg 3-Schichten-Architektur Die 3-Schichten-Architektur besteht aus der Darstellungsschicht, der Logikschicht und der Datenhaltungsschicht. Die zusätzliche Logikschicht übernimmt die Datenverarbeitung und kann auch Sicherheitsaspekte implementieren. Durch diese Dreiteilung sind Darstellungsund Datenhaltungsschicht komplett unabhängig voneinander und können ohne gegenseitiges Wissen ausgetauscht werden, da keine direkte Kommunikation möglich ist. Die meiste moderne Software folgt dem Prinzip der 3-Schichten-Architektur. http://upload.wikimedia.org/wikipedia/commons/a/af/3-Tier.jpg Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 4 / 7 lfd. Nr.: Zusammenhang Der Zusammenhang zwischen den Schichten-Architekturen und Datenbanken besteht darin, dass Datenbanksysteme die unterste Schicht einer solchen Architektur bilden, nämlich die Datenhaltungsschicht. An sich sind Datenbanksysteme als Software betrachtet bereits 2(Access) oder 3(MySQL-Datenbankserver mit Client) Schichtenarchitekturen. 4. Bearbeiten Sie das Tabellendarstellung). Arbeitsblatt ER Datenbanken Entwurf II (ERM und Aufgabe 1 TMieter M-Nr Name Adresse TAuto Kennzeichen Marke Baujahr F_M-Nr Aufgabe 2 TKunde Kunden-Nr Name TKonto F_Kunden-Nr Adresse Konto-Nr Insitut BLZ Da es sich um eine 1:1 Beziehung handelt bildet der Fremdschlüssel in der Tabelle TKonto gleichzeitig den Primärschlüssel. Aufgabe 3 TKunde Kunden-Nr Name Adresse TArtikel Artikel-Nr Bezeichnung Preis Weitere Lösungen mit Zwischentabellen sind auch korrekt. Datum F_Kunden-Nr Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 5 / 7 lfd. Nr.: Aufgabe 4 Lösen Sie die m zu n Beziehung auf. Erstellen Sie ein entsprechendes neues ER-Diagramm und geben Sie bitte die entsprechenden Tabellen an: Abteilung TAbteilung AbteilungsNr 1 hat Name n Adresse TArbeit F_Abteilungs-Nr F_Lehrer-Nr m hat TLehrer Lehrer-Nr Name Arbeit 1 Lehrer Fach Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 6 / 7 lfd. Nr.: 5. Recherchieren Sie folgende Begriffe: a. Superschlüssel Jede beliebige Kombination von Attributen, die einen Datensatz identifizierbar macht ist ein Superschlüssel. Die obige Definition ist ein wenig ungenau, aber leichter zu verstehen als folgende mathematisch korrekte: Superschlüssel sind die Menge von Attributen, die ein Tupel eindeutig identifizieren. b. Schlüsselkandidat Schlüsselkandidaten sind diejenigen Superschlüssel, welche die wenigsten Attribute benötigen, um einen Datensatz eindeutig zu identifizieren. c. Primärschlüssel Der Primärschlüssel ist die Attributsmenge, die festgelegt wird um einen Datensatz eindeutig zu identifizieren. Dabei kann aus den Schlüsselkandidaten frei gewählt werden. d. Sekundärschlüssel Zum Sekundärschlüssel werden alle nicht als Primärschlüssel verwendeten Schlüsselkandidaten. Auch diese können immer einen Datensatz eindeutig identifizieren! Vorsicht: Der Sekundärschlüssel hat zwei Definitionen. Die andere nimmt allerdings nur bezug auf die effiziente Suche in Datenbanken und hat mit dem Sekundärschlüssel an sich wenig gemeinsam, da eigentlich Suchindizes gemeint sind. Diese Definitionen sagen meist, dass der Sekundärschlüssel nicht eindeutig sein muss. e. Fremdschlüssel In relationalen Datenbanken ist dies ein Primärschlüssel in einer anderen Tabelle, um den Bezug zwischen den beiden Tabellen herzustellen. f. Erläutern Sie bitte den Unterschied zwischen einem künstlichen und natürlichen Schlüssel und deren Vor- und Nachteile. Natürliche Schlüssel sind Schlüssel, die in den erhobenen Daten bereits vorhanden sind und eventuell durch Kombination mehrerer Attribute eindeutig sind. Ein natürlicher Schlüssel beim Menschen ist beispielsweise der Fingerabdruck. Künstliche Schlüssel werden extra dazu angelegt, um einen Datensatz eindeutig zu identifizieren. Typisches Beispiel ist eine Kundennummer. Da natürliche Schlüssel nur vorhandene Attribute benutzen sind diese speichereffizienter und für den Sachbearbeiter leichter zu erfassen, als ein künstlicher Schlüssel, der keinen Bezug zum restlichen Datensatz hat. Künstliche Schlüssel bestehen meist nur aus einem Attribut und sind damit laufzeiteffizienter. Weiterhin werden Zufälle ausgeschlossen, durch die doppelte natürliche Schlüssel entstehen können. Name: Tenbusch Arbeitsplan III AS Schlüssel und Transformation Datenbanksysteme Klasse: Datum: Blatt Nr.: 7 / 7 lfd. Nr.: g. Schreiben Sie alle oben genannten Schlüsselarten und alle Schlüsselkombinationen aus folgendem ER-Diagramm: Person 1 n besitzt Punkte ID Name Fahrgestellnr. Auto Marke Kennzeichen Führerscheinnr. Superschlüssel Kandidatenschlüssel Primärschlüssel Sekundärschlüssel Fremdschlüssel Natürlicher Schlüssel Künstlicher Schlüssel TPerson {Punkte, ID, Führerscheinnr., Name}, {ID, Führerscheinnr., Name}, {Punkte, Führerscheinnr., Name}, {Punkte, ID, Name}, {Punkte, ID, Führerscheinnr.}, {Punkte, ID}, {Punkte, Führerscheinnr.}, {ID, Führerscheinnr.}, {ID, Name}, {Führerscheinnr., Name}, {ID}, {Führerscheinnr.} {ID}, {Führerscheinnr.} ID Führerscheinnr. Führerscheinnr. ID TAuto {Fahrgestellnr., Kennzeichen, Marke}, {Fahrgestellnr, Kennzeichen}, {Fahrgestellnr., Marke}, {Kennzeichen, Marke}, {Fahrgestellnr.}, {Kennzeichen}, {Fahrgestellnr.},{Kennzeichen}, Fahrgestellnr. Kennzeichen F_ID Fahrgestellnr., Kennzeichen Führerscheinnr., Fahrgestellnr. und Kennzeichen sind in Ihrem Ursprung künstliche Schlüssel werden in dieser Datenbank allerdings als natürlicher Schlüssel verwendet.