Definition einer Datenbank

Werbung
Einführung
• Dateisystem <-> Datenbanksystem
• Definition einer Datenbank
• Dreischichtenmodell
• Relationale Algebra
• Relationale Datenbanken
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 1
Lohnbuchhaltung mit einem
Dateisystem
Personal Nr, Stundenlohn, Arbeitsstunden
Personal Nr, Steuerklasse, Kinder
Plausibilitäts- und Sortierprogramm
Plausibilitäts- und Sortierprogramm
sortiert
nach
Pers. Nr
sortiert
nach
Pers. Nr
Lohnabrechnung
sortiert
nach
Bank
Buchungslauf
Worzyk
FH Anhalt
für LZB
Bank
daten
Datenbanksysteme für FÜ SS 2000
Seite 1 - 2
Lohnbuchhaltung mit einem
Datenbanksystem
Personalverwaltung
Persona
l
daten
Lohnbuchhaltung
Gehalts
daten
Bank
daten
für LZB
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 3
IBM Computertechnologie
Die permanente Innovation
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 4
Definition einer Datenbank
• Datenbanksystem
– Datenbankmanagementsystem
• Manipulation
• Zugriffssteuerung
• Konsistenzsicherung
– Datenstrukturen
• Daten
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 5
Dreischichtenmodell nach
ANSI/SPARC
• Externe Schicht
– Benutzersicht
• Konzeptionelle Schicht
– Datenbankadministratorsicht
• Interne Schicht
– Datenbankherstellersicht
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 6
Datenmanipulation
• Suchen
• Hinzufügen
• Ändern
• Löschen
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 7
Klassifikation von Programmierstilen
prozedural
deklarativ
funktional
imperativ
logisch
relational
Objektorientiert
basic
fortran
C
smalltalk
C++
lisp
prolog
SQL
scheme
Von: Prof. Schwenzfeger
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 8
Structured Query Language
1970 E.F. Codd: A Relational Model of Data for large Shared Data Banks
1974 D. Chamberlain entwickelt bei IBM in San Jose /USA den ersten Prototypen
System/R (auch SEQUEL) um zu prüfen, ob das Konzept von Codd tragfähig ist.
1979 Qracle liefert erstes Datenbanksystem mit SQL aus
1981 IBM liefert SQL/DS aus
1986 Sybase wird ausgeliefert
1987 ISO 9075 Database Language SQL
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 9
Die wichtigsten relationalen
Datenbanken
Oracle
Oracle
Window s Unix
IBM
DB2
OS/ 390
M icrosoft
SQL-Server
Sybase
Adaptive Server
Informix
Dynamic Server
Worzyk
FH Anhalt
Verteilte
Datenbanken
Datenbanksysteme für FÜ SS 2000
Seite 1 - 10
Standardisierung von SQL
• Wechsel zwischen DBMS möglich
• Einmaliger Schulungsaufwand
• Parallel-Entwicklung möglich (unabhängig von der ZielDB)
• Trennung von DB und Anwendungsprogrammen
• Client-Server Anwendungen werden einfacher
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 11
Parallel-Entwicklung
Gannt - Diagramm
Nr.
Vorgangsname
21.
Januar
28. 04. 11.
1
Vorstudie
2
Schulung SQL
3
Datenmodell entwickeln
4
Entwicklungs DBMS installieren
5
Auswahl Produktions DBMS
6
Produktions DBMS installieren
7
Schulung DBMS
8
Anwendungsprogramme entwickeln
9
Programmieren
Worzyk
FH Anhalt
18.
25.
Februar
01. 08.
15.
22.
März
01. 08.
15.
22.
April
29. 05.
12.
19.
26.
Mai
03.
Datenbanksysteme für FÜ SS 2000
Seite 1 - 12
Parallel-Entwicklung
Netzplan
Datenmodellentwickeln
Anwendungsprogramme
entwickeln
Programmieren
3
8
9
40 Tage
Fr 29.01.99 Do 25.03.99
30 Tage
Fr 12.02.99 Do 25.03.99
30 Tage
Fr 19.02.99 Do 01.04.99
Vorstudie
1
20 Tage
Fr 01.01.99 Do 28.01.99
Entwicklungs DBMS
installieren
4
7 Tage
Fr 29.01.99 Mo 08.02.99
Produktions DBMS
installieren
6
20 Tage
Fr 26.02.99 Do 25.03.99
Auswahl Produktions
DBMS
5
20 Tage
Fr 29.01.99 Do 25.02.99
Schulung SQL
Schulung DBMS
2
7
10 Tage
Mo 11.01.99 Fr 22.01.99
Worzyk
FH Anhalt
5 Tage
Fr 26.02.99 Do 04.03.99
Datenbanksysteme für FÜ SS 2000
Seite 1 - 13
Standardisierung von SQL
Grundlage ist das mathematische Modell einer
Relationenalgebra
-> Entwicklung einer mathematischen Theorie, welche die
Eigenschaften des Modells beschreibt
-> Implementierung von DBMS, so dass diese Eigenschaften
erfüllt sind.
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 14
Elemente der Relationenalgebra
Grundmenge: Relationen
Operationen:
Projektion
Vereinigung
Differenz
Produkt
Selektion
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 15
Relationen
Relationen werden in SQL als Tabellen bearbeitet:
eine Kopfzeile enthält die Attribute
null bis n Tupel oder Zeilen enthalten die Datenwerte
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 16
Projektion
Aus einer Tabelle können eine bestimmte Menge von
Spalten ausgewählt werden, die angezeigt oder
verarbeitet werden.
-> Unabhängigkeit von Tabellenstruktur und
Programmstruktur
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 17
Vereinigung
Die Inhalte zweier Tabellen mit gleichen Attributen können
vereinigt werden, so dass sie sich dem
Anwendungsprogramm als eine Tabelle präsentieren.
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 18
Vereinigung
Beispiel
Worzyk
FH Anhalt
M itarbeiter
Hamburg
M itarbeiter
Tokio
M itarbeiter
New York
Datenbanksysteme für FÜ SS 2000
Seite 1 - 19
Differenz
Die Differenz zweier Tabellen T1 und T2 enthält alle Tupel,
die in der Tabelle T1 aber nicht in der Tabelle T2 enthalten
sind. Voraussetzung für die Bildung einer Differenz ist die
gleiche Struktur von T1 und T2
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 20
Produkt
Das Produkt der Tabellen T1 und T2 hat die Attribute von T1
und T2.
Jedes Tupel von T1 wird mit jedem Tupel von T2 verbunden.
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 21
name
Fuchs
Lange
Worzyk
nummer
141
140
119
Name
Fuchs
Fuchs
Fuchs
Lange
Lange
Lange
Worzyk
Worzyk
Worzyk
Worzyk
FH Anhalt
Relationen
Produkt
Nummer
141
141
141
140
140
140
119
119
119
Lehrgebiet
Englisch
Softw are - Engineering
Datenbanksysteme
Lehrgebiet
Englisch
Softw are-Engineering
Datenbanksysteme
Englisch
Softw are-Engineering
Datenbanksysteme
Englisch
Softw are-Engineering
Datenbanksysteme
Datenbanksysteme für FÜ SS 2000
Seite 1 - 22
Selektion
Aus einer Tabelle werden Tupel mit bestimmten
Eigenschaften ausgewählt und dem
Anwendungsprogramm präsentiert.
Die Auswahl wird mit Hilfe der Aussagelogik getroffen.
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 23
Selektion
Aussagen über Konstanten, Attribute und Funktionen mit
Hilfe von Vergleichsoperatoren

und logischen Operatoren

Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 24
Selektion
Beispiel
Person
Hans
Emil
Jutta
Fritz
Anna
Else
Ort
Köthen
Wolfen
Köthen
Aken
Köthen
Aken
Person
Emil
Anna
Fritz
Else
Hans
Jutta
Beruf
Hausfrau
Hebamme
Kapitän
Lehrer
Lehrer
Lehrer
Beruf
Lehrer
Hausfrau
Kapitän
Hebamme
Einkommen
500
100
800
600
Mögliche Fragen:
wie heißen die Lehrer in Köthen
wieviel verdienen die Leute in Aken
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 25
Zusammenfassung
• Datenbank besteht aus
– Datenbanksystem
• DBMS
• Datenstrukturen
– Daten
• Datenbank trennt Anwendungsprogramme von Daten
• SQL ist deklarative Programmiersprache
• Grundlage für SQL ist Relationenalgebra
Worzyk
FH Anhalt
Datenbanksysteme für FÜ SS 2000
Seite 1 - 26
Herunterladen