garten -daten –bankprg2/ss... · dr. karsten tolle –prg2 –ss 2015 12 relationales...

41
Garten - Daten – Bank Was ist das? Dr. Karsten Tolle – PRG2 – SS 2015

Upload: others

Post on 18-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Garten - Daten – Bank

Was ist das?

Dr. Karsten Tolle – PRG2 – SS 2015

Page 2: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 3

Inhalt heute …

• Kurz: Motivation und Begriffe

• SQL (survival package)

– create table (Tabelle erzeugen)

– insert into (Einfügen)

– select (Anfragen)

• Struktur

• Aggregatfunktionen

• where-Bedingungen

• Anfrage über mehrere Tabellen

Page 3: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 4

Datenbank

Definition (Duden):Elektronisches System, in dem große Mengen an Daten zentral gespeichert werden können.

Datenbank

Was ist der Unterschied einer Datenbank zu einer Festplatte?

Page 4: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 5

• Datenbank-management-system (DBMS)

• Datenbank (DB)

• Datenbanksystem (DBS)

Page 5: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 6

Vorteile DBS

• Redundanz und InkonsistenzKönnen durch die zentrale Datenverwaltung und Datenhaltung vermieden werden.

• Sicherheit gegen DatenmissbrauchDurch die zentrale Benutzerverwaltung können Zugriffsrechte gut kontrolliert werden.

• Datenkonsistenz auch bei AusfallDurch Recovery-Strategien kann sicher gestellt, dass auch nach einem unerwartetem Ausfall die Daten konsistent bleiben (Transaktionen).

• … und weitere!

Page 6: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 7

Fragen um herauszufinden, ob man ein DBMS benötigt:

1. Liegt eine große Datenmenge vor, die schwer zu managen ist?

– Braucht es lange das Dokument zu öffnen?– Ist das Betrachten der Daten schwierig, muss man viel scrollen

und ist es schwer die gesuchten Daten zu finden?

2. Arbeiten verschiedene Personen/Anwendungen mit den Daten?

3. Gibt es weitere Daten, die mit den gegebenen Daten in Relation stehen und ebenfalls gespeichert werden?

– Ziehen Änderungen an einer Stellen Änderungen an anderen Stellen nach sich?

4. Werden die gleichen Daten an unterschiedlichen Orten verwendet?

Page 7: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Bank Kunde

Konto

Geld

Geschäftswissen

Anforderungen 1. .... 2. .... 3. ....

Schema Datenbank

Bank-Experte

Software-Ingenieur

Anwendungen

Page 8: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 9

Schichten-Architektur

DBS

Anwendung

DB-Schnittstelle

Zwei-Schichen-Architektur(Two-Tier-Modell)

Client

Server

z.B. Web, LAN, proprietäres Protokoll …

DBS DB-Server

Application Server

DB-Schnittstelle

Client

Drei-Schichten-Architektur(Three-Tier-Modell)

Applet, JavaScript, …

z.B. HTTP, RMI

Servlet, Java

Anwendung, …

Page 9: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 10

Erstellung einer Datenbank:Erster Schritt …

• Was sind die Anforderungen?

• Was sind die Ziele?

• Ist bekannt was gespeichert werden soll?

� Design des Datenmodels

Page 10: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 11

Erstellung einer Datenbank:Zweiter Schritt …

• Welches DBMS wird genutzt?

• Wer soll wie auf die Daten zugreifen?

� Umsetzung des Datenmodels im DBMS

• Wir verwenden in PRG2:

– relationales DBMS – insb. MariaDB/MySQL

– Zugriff über die Anfragesprache SQL

Page 11: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 12

Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe)

• Tabellen mit Zeilen und Spalten um die Datendarzustellen.

EMPNO FIRSTNME LASTNME PHONENO SALARY

001 Jon Lucas 2983 2000

003 Jon Smith 2980 3588

103 Lucas Jon 4444 3980

999 Jon Smith 3987 1500

Tupel

Attribute

Employee

Schema bzw. Relationenschema:Employee (EMPNO, FIRSTNME, LASTNME, PHONENO, SALARY)

Page 12: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 13

Downloads• MariaDB: https://mariadb.org/

(enthält: HeidiSQL)

• MySQL: http://dev.mysql.com/downloads/mysql/Community Server

Workbench extra (oder als Packet)

Page 13: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 14

Command Line Client

• Wichtige Befehle:– show databases; -- zeigt die Datenbanken an– create database <database_name>; -- erzeugt eine leere DB– drop database <database_name>; -- löscht eine DB– use <database_name>; -- erzeugt eine Verbindung zur Datenbank– show tables; -- zeigt die Tabellen der Datenbank an– explain <table_name>; -- gibt Informationen über die Tabelle– show variables; -- zeigt die aktuellen Einstellungen an

Page 14: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 15

HeidiSQL (geht auch mit MySQL)

Page 15: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 16

MySQL Workbench (geht auch mit MariaDB)

Page 16: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 17

Structured Query Language

• SQL ist für Relationale Datenbanksysteme!

Standards:

• SQL-1 von 1986 bzw. 1989 (ca. 120 Seiten)

• SQL-2 (SQL92) von 1992 (ca. 580 Seiten)http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt

• SQL-3 (SQL99) von 2000 (ca. 1200 Seiten)http://www.cse.iitb.ac.in/dbms/Data/Papers-Other/SQL1999/ansi-iso-9075-2-1999.pdf

• SQL 2003 - ISO/IEC 9075:2003

• SQL:2006 - ISO/IEC 9075-14:2006 (SQL/XML)

• …

Page 17: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 18

Heute …

• Erstellen - create

• Einfügen - insert

• Anfragen - select

… später

• update, delete, alter, drop …

Page 18: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 19

Tabellen erstellen

Eine Tabelle wird im Minimalfall mit ihrem eindeutigen Namen sowie der Liste der zugehörigen Attribute samt Domänen nach folgendem Schema definiert:

create table Relations-Name (Attribut-Name Domäne { , Attribut-Name

Domäne}∗) ; z.B.: create table test (id int);

Page 19: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 20

create table Kunde (Name varchar(30),Vorname varchar(20),Strasse varchar(50),Stadt varchar(25),

Kinder int,GebDatum date

) ;

Page 20: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 21

die wichtigsten-SQL-Datentypen(Domänen)

• integer/int• double(m,d)

• float(m,d)

• decimal(m,d)

• char(n)• varchar(n)• text

• date• time• datetime• timestamp

• clob(n) • blob(n)• …

Siehe auch: http://dev.mysql.com/doc/refman/5.6/en/data-types.html

Page 21: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 22

Einfügen von Tupeln I

Um Daten einzufügen, spezifiziert man das Tupel, welches eingefügt werden soll …

Die Werte für die Attribute der Tupel müssen aus der Domäne (Definitionsbereich) der Attribute sein.

insert into Kunde values

('Otto', 'Hans', 'Bäckerweg 12', 'Frankfurt', 3, '1970-12-01') ;

� Der Kunde "Hans Otto" wird eingefügt.

Page 22: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 23

Einfügen von Tupeln II

... unbekannte Werte können mit NULL-Values

befüllt werden:

insert into Kunde values

('Otto', 'Hans', null, 'Frankfurt', 3, '1970-12-01') ;

� Der Kunde "Hans Otto" wird eingefügt.

Page 23: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 24

Einfügen von Tupeln III

... alternativ kann man die Attribute angeben, die gesetzt werden sollen:

insert into Kunde (Vorname, Name, GebDatum)values ('Hans', 'Otto', '1970-12-01') ;

� Der Kunde "Hans Otto" wird eingefügt.

Page 24: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 25

Einfügen von Tupeln IV

... es können auch mehrere Datensätze mit einem SQL-Statement eingefügt werden:

insert into Kunde (Vorname, Name, GebDatum)values

('Hans', 'Otto', '1970-12-01'),

('Hans', 'Otto', '1925-11-24'),

('Hans', 'Otto', '2012-12-24') ;

� Der Kunde "Hans Otto" wird 3-mal eingefügt.

Page 25: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 26

Einfügen von Tupeln V

... es können auch mehrere Datensätze aus einer Datei eingelesen werden:

LOAD DATA …

Aufgabe 2 Blatt 8 … selbst herausfinden!

Page 26: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 27

Primärschlüssel

Mittels der Klausel primary key kann eine Attribut einer Relation als Primärschlüssel ausgezeichnet werden. Hierdurch wird verhindert, dass ein Wert mehr als einmal eingetragen wird.

create table Kunde (Name varchar(30) primary key not null,Vorname varchar(20),Strasse varchar(50),Stadt varchar(25),Kinder int not null default 0,GebDatum date

) ;abhängig vom DBMS, ob „not null“ nötig ist – MySQL nicht nötig.

Page 27: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 28

Primärschlüssel

Wenn mehr als ein Attribut als Primärschlüssel definiert werden sollen, wird die Klausel in der Form primary key (Attributnamen-Liste) verwendet.

create table Kunde (Name varchar(30) not null,Vorname varchar(20) not null,Strasse varchar(50),Stadt varchar(25),Kinder int not null default 0,GebDatum date

primary key (Name, Vorname) ) ;

Page 28: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 29

Syntaktische Grundform der

SQL-Anfrage

select A1,A2, ... ,An

from R1, R2, ... ,Rm

[where conditions]

[group by clause]

[having clause]

[order by clause];

Page 29: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 30

Von Workbench:

Page 30: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 31

Anfragen ohne Bedingungen

Kunde ( Name Vorname Strasse Stadt)

select Name, Vorname from Kunde;

select Vorname, Name from Kunde;

select Stadt from Kunde;

select * from Kunde;

Page 31: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 32

SQL verwirklicht das Prinzip der „Vielfachmenge“ (engl. multiset). In den Ergebnismengen können demnach Duplikate auftreten.

Sind keine Duplikate erwünscht, müssen sie explizit durch den Zusatz distinct entfernt werden.

select distinct Stadt from Kunde;

Page 32: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 33

Aggregatfunktionen

Die sog. Aggregatfunktionen können in der select-Klausel anstelle von einzelnen Attributen angegeben werden.

Ergebnis einer Aggregatfunktion ist ein Wert, kein Tupel.

select count(∗) as AnzahlKundenfrom Kunden;

Page 33: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 34

Aggregatfunktionen

• min( A ) zur Berechnung des Minimalwerts aller Tupel unter dem Attribut A.

• max( A ) zur Berechnung des Maximalwerts aller Tupel unter dem Attribut A.

• avg( [ distinct ] A ) zur Berechnung des Durchschnittswerts aller Tupel unter dem Attribut A, wobei unter Angabe von distinctmehrfach gleiche Werte nur einmal in die Berechnung eingehen.

• sum( [ distinct ] A ) zur Berechnung der Summe aller Tupel unter dem Attribut A, wobei unter Angabe von distinct mehrfach gleiche Werte nur einmal in die Berechnung eingehen.

• count( ∗ ) zum Zählen der Tupel der betrachteten Relation.• count( [ distinct ] A) zum Zählen der Tupel der betrachteten

Relation, wobei zunächst eine Duplikateneliminierung bezogen auf Werte unter dem Attribut A stattfindet.

Page 34: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 35

where-Klausel

Bezüglich der Bedingung sind Vergleiche mit den üblichen Operatoren, den logischen Verknüpfungen and und or sowie Klammerungen gestattet.

Kunde ( Name Vorname Strasse Stadt Kinder)

select * from Kundewhere Kinder > 0 or Stadt = 'Frankfurt' and

Name = 'Otto' ;

Üblich: erst AND dann OR … aber besser lesbar mit Klammern!

Page 35: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 36

Kunde ( Name Vorname Strasse Stadt Kinder)

select * from Kundewhere Kinder > 0 or Stadt = 'Frankfurt' andName = 'Otto' ;

Kunde ( Name Vorname Strasse Stadt Kinder)

select * from Kundewhere Kinder > 0 or (Stadt = 'Frankfurt' andName = 'Otto');

Page 36: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 37

Anfrage über mehrere Relationen

Werden in der from-Klausel mehrere Relationen spezifiziert, so erfolgt die Berechnung des kartesischen Produktes.

Konto ( KontoNr KundenNr FilialName Saldo )

Filiale ( Name Leiter Stadt Einlagen )

select * from Filiale, Konto;… im Ergebnis wird jeder DS auf Filialemit jedem DS aus Konto verbunden!

Page 37: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 38

Anfrage über mehrere Relationen

Konto ( KontoNr KundenNr Name Saldo )

Filiale ( Name Leiter Stadt Einlagen )

select * from Filiale, Konto;

select * from Filiale, Konto where Name = ' test';

�select * from Filiale f, Konto k where f.Name = ' test';

� Fehlermeldung: Name nicht eindeutig!

Page 38: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 39

SQL-Online-Tutorial

• http://sqlzoo.net/

Page 39: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 40

SQL Online Tutorial

• Anfragen können interaktiv ausgeführt werden.

Page 40: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 41

SQL – Web Links

• SQL Tutorial (deutsch): http://www.sqltutorial.de/

• SQL Tutorial (englisch): http://www.w3schools.com/sql/

• SQL Online ausprobieren: http://sqlzoo.net/

Page 41: Garten -Daten –Bankprg2/SS... · Dr. Karsten Tolle –PRG2 –SS 2015 12 Relationales Datenbankmodell E.F. Codd, 1970 (Grundbegriffe) • TabellenmitZeilenund Spaltenum die Daten

Dr. Karsten Tolle – PRG2 – SS 2015 42

Literatur – eBooks allgemein

• http://www.ub.uni-frankfurt.de/datenbanken/ebooks_gesamt.html