Datenbanken

16
Detlev Boehme, BBS Friedenstraße Wilhelmshaven 1 Datenbanken Datenbank = Datenbankprogramm + Daten Datenbankprogramm = Datenbankmanagementsystem (DBMS) = System, das eine oder mehrere Datenbanken verwaltet und den Zugriff auf die Daten regelt, z.B. Access Beispiel: Musikverwaltungsdatenbank Daten : Musikstüc k Titel Komponist Erscheinungs- jahr Kategorie Tonträger "Gegenstände" = Entitäten Eigenschaften = Attribute

description

Datenbanken. Erscheinungs- jahr. Komponist. Kategorie. Tonträger. Titel. Datenbank = Datenbankprogramm + Daten. Datenbankprogramm = Datenbankmanagementsystem (DBMS) = System, das eine oder mehrere Datenbanken verwaltet und den Zugriff auf die Daten regelt, z.B. Access. - PowerPoint PPT Presentation

Transcript of Datenbanken

Page 1: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 1

DatenbankenDatenbankenDatenbank = Datenbankprogramm + Daten

Datenbankprogramm = Datenbankmanagementsystem (DBMS) = System, das eine oder mehrere Datenbanken verwaltet und den Zugriff auf die Daten regelt, z.B. Access

Beispiel: Musikverwaltungsdatenbank

Daten:

Musikstück

Titel

Komponist

Erscheinungs-jahr

Kategorie

Tonträger

"Gegenstände" = Entitäten

Eigenschaften = Attribute

Page 2: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 2

Relationale DatenbankenRelationale Datenbanken

TitelKomponist

Kategorie

Ton-träger

Aida Verdi Oper CD

Revolver Beatles Beat LP

Take Five Brubeck Jazz MC

Feldnamen = AttributeDatensatz = Tupel

Attributwert

Felder

In Relationalen Datenbanken werden die Daten in Tabellen (= Relationen) gespeichert.

Page 3: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 3

Relationale DatenbankenRelationale DatenbankenWas muss das Datenbanksystem für die Bearbeitung von Daten zur Verfügung stellen?

Bequeme Eingabe neuer Daten Veränderung von Daten, z.B. Löschen Selektieren von Daten nach eigenen Kriterien Sperren bestimmter Daten Analysieren von Daten Berechnungen mit Daten Ausgabe von Daten: Anzeige, Druck Access: Objekte werden zur Verfügung gestellt

Page 4: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 4

Zusammenhänge: Daten und Objekte einer Datenbank

Relationale DatenbankenRelationale Datenbanken

Datenauswertenberechnenausgebenz.B. drucken

Berichte

Datenanalysierenfilternberechnen

Abfragen

TabellenDaten

Datenbearbeitenz.B. Eingabe

Formulare

Page 5: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 5

Relationale DatenbankenRelationale DatenbankenGrundlegende Begriffe:

Datenintegrität - Datenkonsistenz:Einheitliche Daten zum selben SachverhaltBeispiel: Die Adresse einer Person kann in verschiedenen Tabellen

enthalten sein. Bei Änderung der Adresse (Umzug) müssen alle Tabellen die richtige neue Adresse enthalten.

Datenredundanz:Überfluss an Information - mehrfache Speicherung derselben Daten.Probleme: - Unnötige Vergrößerung der Datenmenge und damit der DB - Fehlerhafte Einträge durch Wiederholung möglich

z.B. Mülller statt Müller

Anomalien:Fehler in den Daten (z.B. durch Redundanzen, Änderungen, Löschen, …) führen zu Dateninkonsistenz, die Anomalie genannt wird.

Page 6: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 6

Relationale DatenbankenRelationale DatenbankenGrundlegende Begriffe (Fortsetzung):Schlüssel:Datenintegrität in relationalen Datenbanken basiert auf dem Konzept des Schlüssels. Es gibt Primärschlüssel und Fremdschlüssel.

Fremdschlüssel: Attribut (oder eine Menge von Attributen), das in mehr als einer Tabelle vorkommt und in einer dieser Tabellen den Primärschlüssel bildet.

Primärschlüssel: Attribut (oder eine Menge von Attributen), das einen Datensatz eindeutig identifiziert.

Beispiel: Postleitzahljede Postleitzahl identifiziert eindeutig einebestimmte Stadt bzw. einen Stadtteil

Referentielle Vereinbarung strenger Regeln für die Beziehungen Integrität: zwischen den Tabellen einer Datenbank. Betrifft den Gebrauch von Fremdschlüsseln (später mehr dazu).

Page 7: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 7

Relationale DatenbankenRelationale Datenbanken

Normalisierung der Tabellen einer DatenbankZiele• Vermeidung von Redundanz• Vermeidung von Dateninkonsistenz und Anomalien• Vermeidung von Datenverlust• Erhöhung der Effizienz der DatenbankUm die genannten Probleme zu lösen, müssen die Tabellen der DB bestimmte Regeln einhalten.Das Resultat dieser Regeln wird als Normalform der Tabellen bezeichnet.

Page 8: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 8

Relationale DatenbankenRelationale Datenbanken

Nullte Normalform: nicht normalisierte TabelleKomponist-Nr

Komponist Titel Kategorie

1 VerdiAida, Nabucco, 4 Jahreszeiten

Oper, Sinfonie

2 Beatles

Sargent Pepper,

Revolver, Best of

Beat

3 Brubeck Take Five JazzIn diesen Feldern sind mehrere Informationen gespeichert!

Pri

märs

chlü

ssel

Primärschlüssel:Feld oder Feldkombination, die einen Datensatz eindeutig kennzeichnet.

Page 9: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 9

Relationale DatenbankenRelationale DatenbankenErste NormalformEine Tabelle ist in der 1. Normalform, wenn alle Attributwerte atomar sind. D.h. alle Felder müssen so sein, dass sie nicht weiter unterteilt werden können.

Komponist-Nr Komponist Titel Kategorie

1 Verdi Aida Oper

1 Verdi Nabucco Oper

1 Verdi Vier Jahreszeiten Sinfonie

2 Beatles Sargent Pepper Beat

2 Beatles Revolver Beat

2 Beatles Best of Beat

3 Brubeck Take Five JazzAlle Attributwerte sind atomar – der Primärschlüssel kennzeichnet aber mehrere Datensätze

Page 10: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 10

Relationale DatenbankenRelationale DatenbankenZweite NormalformEine Tabelle ist in der 2. Normalform, wenn sie in der 1. Normalform ist und jedes Nicht-Schlüsselfeld von jedem Schlüsselkandidaten voll funktional abhängig ist.

Schlüssel-feld

SinfonieVier JahreszeitenVerdi1

OperAidaVerdi1

KategorieTitelKomponistKomponist-Nr

N i c h t – S c h l ü s s e l f e l d e r

Beispiel:

Aus dem Primärschlüssel 1 folgt direkt nur der Komponist Verdi, nicht der Titel (es gibt ja mehrere) und auch nicht die Kategorie.Ergebnis: Nur das Nicht-Schlüsselfeld „Komponist“ ist voll funktional abhängig vom Schlüsselfeld

Die Tabelle ist nicht in der 2. Normalform

Nicht-Schlüsselfeld

Page 11: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 11

Relationale DatenbankenRelationale DatenbankenFunktionale Abhängigkeit nur durch Teilung der Tabelle erreichbar:

Komponist-Nr

Komponist

1 Verdi

2 Beatles

3 BrubeckMusik-Nr Kompon

istTitel

Kategorie

1 1 Aida 1

2 1 Nabucco 1

3 1 4 Jahreszeiten 2

4 2Sargent Pepper

3

5 2 Revolver 3

6 2 Best of 3

7 3 Take Five 4

Kategorie-Nr Kategorie

1 Oper

2 Sinfonie

3 Beat

4 Jazz

Tbl_Komponisten

Tbl_Musik

Tbl_Kategorie

Primärschlüssel

Fremdschlüssel

Page 12: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 12

Relationale DatenbankenRelationale Datenbanken

Dritte NormalformEine Relation ist in der dritten Normalform, wenn sie in der zweiten Normalform ist und kein Nicht-Schlüsselfeld transitiv von einem Schlüsselkandidaten abhängt.

Beispiel: Adressendatenbank: Tbl_Freunde

Nr Vorname

Name Straße PLZ Ort

1 Dirk Stumpf Waagestr. 20 26386 Wilhelmshaven

2 Klara Blume Schmiedeweg 3

56626 AndernachDiese Tabelle enthält eine Redundanz:

Das Attribut "Ort“Die PLZ "26386" steht für Wilhelmshaven, die Ortsangabe steht

nochmals für Wilhelmshaven: Das Nicht-Schlüsselfeld "Ort“ ist transitiv (weisend) vom möglichen Schlüsselfeld (= Schlüsselkandidat) "PLZ" abhängig!

Ort

Page 13: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 13

Relationale DatenbankenRelationale DatenbankenLösung des Problems:Zerlegung in 2 Tabellen

Nr Vorname

Name Straße PLZ

1 Dirk Stumpf

Waagestr. 20 26386

2 Klara Blume Schmiedeweg 3

56626

Tbl_Freunde

Tbl_Orte PLZ Ort

26386 Wilhelmshaven

56626 Andernach

Primärschlüssel

Fremdschlüssel

Page 14: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 14

Relationale DatenbankenRelationale Datenbanken

Datenbankentwurf:Entity / Relationship Modell (E/R-Modell)

Vor der Entwicklung einer Datenbank steht die Modellierung:Bildliche Darstellung durch das E/R-Modell:Entität: - Gegenstand aus der realen Welt

- eindeutig identifizierbar- Darstellung: Kasten

Attribute: - beschreiben Entitäten- Darstellung: Ovale

Beziehungen: - repräsentieren die Wechselwirkungen (relationships) zwischen Entitäten

- Darstellung: Rauten

Page 15: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 15

Relationale DatenbankenRelationale DatenbankenEntitäten der

Musikverwaltungsdatenbank

Musikstück

Musik-Nr

Erscheinungjahr

KategorieTitel

Tonträger

Komponist

Name

Komponist-Nr

Interpret

Interpret-Nr

Name

schreibt spielt

1

N

N

M

Page 16: Datenbanken

Detlev Boehme, BBS Friedenstraße Wilhelmshaven 16

Relationale DatenbankenRelationale DatenbankenE / R – Modell mit Ausleihe

Ausleihvorgang

Ausleih-Nr

Ausleih-Datum

Rückgabe-Datum

ausgeliehen

wird

Freund

Komponist

Interpret

Adresse

Name

Freund-Nr

ausgeliehen

wird

schreibt

spielt

Musikstück

Schwache Entität:kann nicht isoliert existieren (ein Ausleihvorgang existiert nicht ohne Musikstücke und Freunde)Darstellung: doppelte Linien