Datenbanksysteme für FÜ SS 2001 Seite 1 - 1 Worzyk FH Anhalt Einführung Dateisystem...

Preview:

Citation preview

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

WorzykFH Anhalt

Einführung

• Dateisystem <-> Datenbanksystem

• Definition einer Datenbank

• Dreischichtenmodell

• Relationale Algebra

• Relationale Datenbanken

Datenbanksysteme für FÜ SS 2001Seite 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

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

WorzykFH Anhalt

Lohnbuchhaltung mit einem Datenbanksystem

Personaldaten

Gehaltsdaten

Bankdaten

Lohnbuchhaltung

Personalverwaltung

für LZB

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

WorzykFH Anhalt

IBM Computertechnologie

Die permanente Innovation

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

WorzykFH Anhalt

Definition einer Datenbank

• Datenbanksystem

– Datenbankmanagementsystem• Manipulation

• Zugriffssteuerung

• Konsistenzsicherung

– Datenstrukturen

• Daten

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

WorzykFH Anhalt

Dreischichtenmodell nach ANSI/SPARC

• Externe Schicht

– Benutzersicht

• Konzeptionelle Schicht

– Datenbankadministratorsicht

• Interne Schicht

– Datenbankherstellersicht

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

WorzykFH Anhalt

Datenmanipulation

• Suchen

• Hinzufügen

• Ändern

• Löschen

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

WorzykFH Anhalt

Klassifikation von Programmierstilen

imperativ funktional

deklarativprozedural

Objekt-orientiert

basic

fortran

C

C++

smalltalk lisp

scheme

SQLprolog

logisch relational

Von: Prof. Schwenzfeger

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

WorzykFH Anhalt

Beispiel Programmierstile

prozeduralEintrag = anfangrepeate eintrag = eintrag.nextuntil eintrag.name = ‚Worzyk‘;gesuchte_nummer = eintrag.nummer - 10;for eintrag = anfang to eintrag = ende do

if eintrag.nummer = gesuchte_nummer print eintrag.name;

eintrag = eintrag.next;end;

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

WorzykFH Anhalt

Beispiel Programmierstile

deklarativSELECT name FROM telefonbuchWHERE nummer =

(SELECT nummer from telefonbuchWHERE name = ‚Worzyk‘) - 10;

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

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 aus

1981 IBM liefert SQL/DS aus

1986 Sybase wird ausgeliefert

1987 ISO 9075 Database Language SQL

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

WorzykFH Anhalt

Die wichtigsten relationalen

DatenbankenOracle Oracle Windows Unix

IBM DB2 OS/390

Microsoft SQL-Server

Sybase Adaptive Server VerteilteDatenbanken

Informix Dynamic Server

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

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

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

WorzykFH Anhalt

Parallel-EntwicklungGannt - Diagramm

Nr. Vorgangsname

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

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

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

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

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

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.

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

WorzykFH Anhalt

Elemente der Relationenalgebra

Grundmenge: Relationen Operationen:

ProjektionVereinigungDifferenzProdukt Selektion

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

WorzykFH Anhalt

Relationen

Relationen werden in SQL als Tabellen bearbeitet:

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

enthalten die Datenwerte

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

WorzykFH Anhalt

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

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

WorzykFH Anhalt

Vereinigung

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

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

WorzykFH Anhalt

VereinigungBeispiel

Mitarbeiter Hamburg

Mitarbeiter Tokio

Mitarbeiter New York

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

WorzykFH Anhalt

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

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

WorzykFH Anhalt

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.

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

WorzykFH Anhalt

RelationenProdukt

name nummer Richter 3125 Lange 3120 Worzyk 3135

LehrgebietEnglischBetriebssystemeDatenbanksysteme

Name Nummer Lehrgebiet Richter 3125 Englisch Richter 3125 Betriebssysteme Richter 3125 Datenbanksysteme Lange 3120 Englisch Lange 3120 Betriebssysteme Lange 3120 Datenbanksysteme Worzyk 3135 Englisch Worzyk 3135 Betriebssysteme Worzyk 3135 Datenbanksysteme

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

WorzykFH Anhalt

Selektion

Aus einer Tabelle werden Tupel mit bestimmten Eigenschaften ausgewählt und dem Anwendungsprogramm präsentiert.

Die Auswahl wird mit Hilfe der Aussagelogik getroffen.

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

WorzykFH Anhalt

Selektion

Aussagen über Konstanten, Attribute und Funktionen mit Hilfe von Vergleichsoperatoren und logischen Operatoren

Datenbanksysteme für FÜ SS 2001Seite 1 - 27

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

Datenbanksysteme für FÜ SS 2001Seite 1 - 28

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

Recommended