26
Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung • Dateisystem <-> Datenbanksystem • Definition einer Datenbank • Dreischichtenmodell • Relationale Algebra • Relationale Datenbanken

Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Embed Size (px)

Citation preview

Page 1: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 1

WorzykFH Anhalt

Einführung

• Dateisystem <-> Datenbanksystem

• Definition einer Datenbank

• Dreischichtenmodell

• Relationale Algebra

• Relationale Datenbanken

Page 2: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 2

WorzykFH Anhalt

Lohnbuchhaltung mit einem Dateisystem

Personal Nr, Stundenlohn, Arbeitsstunden Personal Nr, Steuerklasse, Kinder

Plausibilitäts- und Sortierprogramm Plausibilitäts- und Sortierprogramm

Lohnabrechnung

BuchungslaufBankdaten

sortiert nachPers. Nr

für LZB

sortiert nachPers. Nr

sortiert nachBank

Page 3: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 3

WorzykFH Anhalt

Lohnbuchhaltung mit einem Datenbanksystem

Personaldaten

Gehaltsdaten

Bankdaten

Lohnbuchhaltung

Personalverwaltung

für LZB

Page 4: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 4

WorzykFH Anhalt

IBM Computertechnologie

Die permanente Innovation

Page 5: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 5

WorzykFH Anhalt

Definition einer Datenbank

• Datenbanksystem

– Datenbankmanagementsystem• Manipulation• Zugriffssteuerung• Konsistenzsicherung

– Datenstrukturen

• Daten

Page 6: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 6

WorzykFH Anhalt

Dreischichtenmodell nach ANSI/SPARC

• Externe Schicht – Benutzersicht

• Konzeptionelle Schicht– Datenbankadministratorsicht

• Interne Schicht– Datenbankherstellersicht

Page 7: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 7

WorzykFH Anhalt

Datenmanipulation

• Suchen• Hinzufügen• Ändern• Löschen

Page 8: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 8

WorzykFH Anhalt

Klassifikation von Programmierstilen

imperativ funktionaldeklarativprozedural

Objekt-orientiert

basic

fortran

C

C++

smalltalk lisp

scheme

SQLprolog

logisch relational

Von: Prof. Schwenzfeger

Page 9: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 9

WorzykFH Anhalt

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 aus1981 IBM liefert SQL/DS aus1986 Sybase wird ausgeliefert1987 ISO 9075 Database Language SQL

Page 10: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 10

WorzykFH Anhalt

Die wichtigsten relationalen

DatenbankenOracle Oracle Windows Unix

IBM DB2 OS/390

Microsoft SQL-Server

Sybase Adaptive Server VerteilteDatenbanken

Informix Dynamic Server

Page 11: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 11

WorzykFH Anhalt

Standardisierung von SQL

• Wechsel zwischen DBMS möglich• Einmaliger Schulungsaufwand• Parallel-Entwicklung möglich

(unabhängig von der Ziel-DB)• Trennung von DB und

Anwendungsprogrammen• Client-Server Anwendungen werden

einfacher

Page 12: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 12

WorzykFH Anhalt

Parallel-EntwicklungGannt - Diagramm

Nr. Vorgangsname1 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

21. 28. 04. 11. 18. 25. 01. 08. 15. 22. 01. 08. 15. 22. 29. 05. 12. 19. 26. 03.Januar Februar März April Mai

Page 13: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 13

WorzykFH Anhalt

Parallel-EntwicklungNetzplan

Datenmodell entwickeln

3 40 Tage

Fr 29.01.99 Do 25.03.99

Auswahl ProduktionsDBMS

5 20 Tage

Fr 29.01.99 Do 25.02.99

Produktions DBMSinstallieren

6 20 Tage

Fr 26.02.99 Do 25.03.99

Schulung DBMS

7 5 Tage

Fr 26.02.99 Do 04.03.99

Anwendungsprogrammeentwickeln

8 30 Tage

Fr 12.02.99 Do 25.03.99

Programmieren

9 30 Tage

Fr 19.02.99 Do 01.04.99

Vorstudie

1 20 Tage

Fr 01.01.99 Do 28.01.99

Schulung SQL

2 10 Tage

Mo 11.01.99 Fr 22.01.99

Entwicklungs DBMSinstallieren

4 7 Tage

Fr 29.01.99 Mo 08.02.99

Page 14: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 14

WorzykFH Anhalt

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.

Page 15: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 15

WorzykFH Anhalt

Elemente der Relationenalgebra

Grundmenge: Relationen Operationen:

ProjektionVereinigungDifferenzProdukt Selektion

Page 16: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 16

WorzykFH Anhalt

RelationenRelationen werden in SQL als

Tabellen bearbeitet:eine Kopfzeile enthält die Attribute null bis n Tupel oder Zeilen

enthalten die Datenwerte

Page 17: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 17

WorzykFH Anhalt

ProjektionAus einer Tabelle können eine

bestimmte Menge von Spalten ausgewählt werden, die angezeigt oder verarbeitet werden.

-> Unabhängigkeit von Tabellenstruktur und Programmstruktur

Page 18: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 18

WorzykFH Anhalt

VereinigungDie Inhalte zweier Tabellen mit

gleichen Attributen können vereinigt werden, so dass sie sich dem Anwendungsprogramm als eine Tabelle präsentieren.

Page 19: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 19

WorzykFH Anhalt

VereinigungBeispiel

Mitarbeiter Hamburg

Mitarbeiter Tokio

Mitarbeiter New York

Page 20: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 20

WorzykFH Anhalt

DifferenzDie 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

Page 21: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 21

WorzykFH Anhalt

ProduktDas Produkt der Tabellen T1 und T2

hat die Attribute von T1 und T2.Jedes Tupel von T1 wird mit jedem

Tupel von T2 verbunden.

Page 22: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 22

WorzykFH Anhalt

RelationenProdukt

name nummerFuchs 141Lange 140Worzyk 119

LehrgebietEnglischSoftware - EngineeringDatenbanksysteme

Name Nummer LehrgebietFuchs 141 EnglischFuchs 141 Software-EngineeringFuchs 141 DatenbanksystemeLange 140 EnglischLange 140 Software-EngineeringLange 140 DatenbanksystemeWorzyk 119 EnglischWorzyk 119 Software-EngineeringWorzyk 119 Datenbanksysteme

Page 23: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 23

WorzykFH Anhalt

SelektionAus einer Tabelle werden Tupel mit

bestimmten Eigenschaften ausgewählt und dem Anwendungsprogramm präsentiert.

Die Auswahl wird mit Hilfe der Aussagelogik getroffen.

Page 24: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 24

WorzykFH Anhalt

Selektion Aussagen über Konstanten, Attribute

und Funktionen mit Hilfe von Vergleichsoperatoren und logischen Operatoren

Page 25: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 25

WorzykFH Anhalt

SelektionBeispiel

Person Ort Person Beruf Beruf EinkommenHans Köthen Emil Hausfrau Lehrer 500Emil Wolfen Anna Hebamme Hausfrau 100J utta Köthen Fritz Kapitän Kapitän 800Fritz Aken Else Lehrer Hebamme 600Anna Köthen Hans LehrerElse Aken J utta Lehrer

Mögliche Fragen:wie heißen die Lehrer in Köthenwieviel verdienen die Leute in Aken

Page 26: Datenbanksysteme für FÜ SS 2000 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem Datenbanksystem Definition einer Datenbank Dreischichtenmodell Relationale

Datenbanksysteme für FÜ SS 2000Seite 1 - 26

WorzykFH Anhalt

Zusammenfassung• Datenbank besteht aus

– Datenbanksystem• DBMS• Datenstrukturen

– Daten• Datenbank trennt

Anwendungsprogramme von Daten• SQL ist deklarative Programmiersprache• Grundlage für SQL ist Relationenalgebra