Internetdienste und -Protokolle

Werbung
Informatik II
Datenorganisation – Datenbanken
Studiengang Wirtschaftsingenieurwesen
(2. Semester)
Prof. Dr. Sabine Kühn
Fachbereich Informatik/Mathematik
Raum S315a
Tel. (0351) 462 2490
[email protected]
www.htw-dresden.de/~skuehn
0.1 Organisatorisches
1 SWS Vorlesung
2 SWS Praktikum
Prof. Kühn
Gruppen 1, 2:
Gruppen 3, 4:
und Restegr. :
Frau Buschendorf,
Frau Kantardshieffa,
Prof. Kühn
Selbstständige Erarbeitung eines „Beleges“ zur Überprüfung der eigenen
Kenntnisse in Vorbereitung auf die Prüfung
(in den letzten 4 Prakt.-stunden)
Schriftliche Prüfung
Note
Informatik
=
(Klausur, 90 min., ohne Unterlagen)
Inf I (50 %) + Inf II (50 %)
2
0.2 Überblick über die Datenbankproblematik
Unter einer Datenbank versteht man ein System zur
Beschreibung, Speicherung und Wiedergewinnung von
umfangreichen Datenmengen.
Abgrenzung der Begriffe
Daten, Informationen und Wissen
3
Daten, Informationen, Wissen
Grün
(Datum)
Losfahren?
Kontext: Ampel
(Information)
Reaktion (Wissen)
4
Daten kommen vor in...
Betriebssysteme
z.B.:Windows NT, Solaris, Linux
Anwendungssoftware z.B.:Textverarbeitungsprogramme,
Tabellenkalkulation
Grafiken, Animation
z.B. Coreldraw, Power Point
Probleme in der Datenhaltung
1.
2.
3.
4.
Datenredundanz (Speicherplatz)
Gefahr der Dateninkonsistenz
Effizienz der Datenverwaltung
Datenschutz und Datensicherheit
5
0.3 Inhalt
1.
Grundlagen der Datenorganisation
Speichern und Wiederfinden von Daten
Datenbanksysteme
2.
Einführung in das relationale Datenmodell
Strukturteil/ Operationsteil
3.
MS Access
Arbeitsoberfläche/ Erstellen von DB/ Tabellen/ Berichte/
Formulare/ Makros
4.
Programmentwicklung mit VBA
Grundlagen/ Steuerstrukturen/ Objekte in Access
5.
Datenmodellierung
Entity Relationship Modell/ Entwurf von Relationen/ Schlüsselarten
6.
Datenbankorganisation
Architektur von Datenbanksystemen/ Transaktionen
6
1.
Grundlagen der Datenorganisation
1.1 Motivation: Speichern und Wiederfinden
Programmverarbeitung findet grundsätzlich im Hauptspeicher (HS) statt.
Datenverwaltung „intern“: HS, Register, Puffer (Cache)
„extern“: Festplatte, CD, DVD, ...
intern:
„statisch“
Anforderung bereits zur
Übersetzungszeit
bekannt (Compiler)
vs.
Dateien
Persistenz
„dynamisch“
Anforderung erst zur
Laufzeit bekannt
7
Erzeugen und Ausführen von Programmen:
übersetzen
x.c
verbinden
(linken)
HS
x.o
a.out
Bibliotheksprogramme
Quellprogramme
Objektprogramme
(Zielprogramme)
Ausführbares Programm
(Lademodul, Executable)
8
Organisationsformen
ungeordnete
Folge
geordnete
Folge
Binärer
Baum
B*-Baum
Hashtabelle
Basisoperationen
• Einfügen eines Elementes in die Datenbasis
• Suchen eines Elementes in der Datenbasis
• Entfernen eines Elementes aus der Datenbasis
Reihenfolge der Verarbeitung
Zugriffsverfahren
• bestimmte Reihenfolge
• beliebige Reihenfolge
•
•
•
sequentiell
binär/trichotom (bei Bäumen)
Hash-Verfahren
(direkt oder indirekt)
9
10
1.2 Datenbanksysteme
Datenbanksystem (DBS)
Datenbankmanagementsystem (DBMS)
Datenbank (DB)
DBS = DBMS + DB
DBS sind eine spezielle Art von
Informationssystemen
Ziel: weitgehende Unabhängigkeit der Daten
von den mit ihnen
arbeitenden Programmen bzw. Benutzern
3 Ebenen
- Externe Ebene
(Benutzersichten)
- Konzeptuelle Ebene (Logische Gesamtsicht)
- Interne Ebene (physische Sicht)
11
3 Ebenen - Beispiel
12
Klassifikation von Datenbanksystemen
13
2.
Einführung Relationales Datenmodell
Relationenmodell nach E. F. Codd, 1970
Strukturteil:
Beschreiben von Objekttypen durch Relationenschemata
Operationsteil:
Satz von Operationen für
Anfragen (Selektion)
Definitionen
Modifikationen (Einfügen, Entfernen)
2.1 Strukturteil
Objekttyp
beschrieben durch Menge von Attributen mit
Wertebereichen
Objekt
besitzt Ausprägungen (Werte) zu Attributen
14
Veranschaulichung eines Relationsschemas und einer Relation
Relationenschema R
Attribute, Wertebereiche
Relationen r(R)
Teilmenge des kartesischen Produktes über den
Wertebereichen von R
Ein Element einer Relation heißt Tupel
Basisrelation
Die in der Datenbank aktuell vorhandene Relation
zu einem definierten Relationenschema
Datenbank
Menge aller Basisrelationen
Datenbankschema
Menge aller Relationenschemata
15
Kartesisches Produkt
Angenommen die Relation
besteht aus zwei Attributen
mit gleichen Wertebereichen
der Menge M. Das kartesische
Produkt umfasst alle Kombinationen der einzelnen Elemente.
Mögliche Basisrelation sei hier
die grün markierte Teilmenge.
16
Eigenschaften einer Relation
•
•
•
•
keine mehrfachen Tupel vorhanden
keine festgelegte Reihenfolge der Tupel in der Relation
keine Festlegung der Reihenfolge der Attribute
Attributwerte sind „atomar“ (sog. 1 Normalform)
Tabellendarstellung von Relationen:
•
•
•
•
Relation
Attribut
Tupel
Wertebereich
• Grad (degree)
• Kardinalität
Tabelle
Spalte
Datensatz, Zeile
Domäne
Anzahl der Attribute
Anzahl der Datensätze
17
Beispiel für das gesamte Semester:
4 Objekttypen aus dem Geschäftsbereich einer Handelsfirma (Kaufen, Verkaufen)
Lieferanten
LNR
LNAME
…
enthalten
Bestellungen
Artikel
werden geliefert von
Lieferanten
Vorlesung:
Praktikum:
enthalten
Kunden
Kunden, Bestellungen
Artikel, Bestellungen
Kunden
KNR
Kundennummer
NAME
VORNAME
STRASSE
PLZ
ORT
UMSATZ
SUMOFFEN
Summe unbez. Rechnungen
LETZTRECH
Datum der letzten Rechnung
FRECHOFFEN
unbez. Rechn. vor LETZTRECH
18
2.2 Operationsteil
Relationenalgebra
Normsprache SQL
Relationenalgebra:
Satz von Grundoperationen
Selektion
σ
Projektion
π
Natürlicher Verbund
|
><|
Mengenoperationen
∪, ∩, −
Umbenennung
β
19
Selektion
Wählt Tupel (Zeilen) aus einer Relation (Tabelle) entsprechend einer
Selektionsbedingung aus.
Selektionsbedingung kann sein:
Attribut – Konstanten – Vergleich
Attribut – Attribut – Vergleich
Verknüpfung von Selektionsbedingungen durch Operatoren
ODER, AND,NOT
Beispiele:
σORT = “Dortmund“ (r(Kunden))
σSUMOFFEN <> 0 (r(Kunden))
σNAME = VORNAME (r(Kunden))
σSUMOFFEN <> 0 AND UMSATZ > 10000 (r(Kunden))
20
Weitere Operationen der Relationsalgebra
Projektion
Wählt Spalten aus einer Relation (Tabelle) aus. Es entsteht eine neue Relation.
Natürlicher Verbund
Verknüpfung von Relationen über allen gemeinsamen Attributen.
Nur Tupel mit gemeinsamen gleichen Attributwerten werden zu neuen Tupeln verbunden.
Mengenoperationen
Übliche Mengenoperationen auf Relationen anwenden, die das gleiche Relationenschema
besitzen.
Umbenennung
Dient zum „kompatibel machen“ von Relationenschemata, die später vereinigt werden
sollen.
21
Herunterladen