Sie sind auf Seite 1von 8

EREIGNIS GESTEUERTE PROZESSKETTENIEPKI

Ereignisse Funktionen
5

Konnektoren Kanten Aufgabe ) Vorhaben


"


Ist -
Zustand „

REGELN OPERATOREN

^ AND -

alle

✓ OR -

einso.dk

V XOR -

nur eins

Beispiel aus Tutorium 2 Aufgabe 3 Wo kommen die Operatoren hin?

J
f

: <
ENTITY RELATIONSHIP MODELL IERMI

E-Typen R-Typen
Kanten
" "

„ Objekte " Beziehungen

DEFINITIONEN

Redundanz
doppelte lmehrfache Datenhaltung hoher Pflege aufwand
= →

Primärschlüssel
eindeutige Identifizierung des Datensatzes
=

Fremdschlüssel =
verweist auf Primär Schlüssel in anderer Tabelle

Referentielle Integrität =
stellt sicher , dass nur Daten
eingetragen werden ,
die in
ref-
Tabelle sind

Kardinalität oft Tabelle Beztabelle


gibt an , wie ein Datensatz aus einer in sein darf
=

BEZIEHUNGEN

u
C -

maximal 1
v

AB B

Anzahl der Objekte von B, 1 1


genau
Anzahl der Objekte von A,
-

die mit einem Objekt aus A die mit einem Objekt aus B
verknüpft sein können verknüpft sein können

Mc -
O bis es

m -

1 bis es

" ^

Verbindet ¥
" "
E- mit R
Typen Typen
Einkaufs - ste Kunde
man -

vererben die E- Typen alle Primär -

Schlüssel ,
werden aber nicht
" m

b)
ht
Einkaufs liste Artie,

Aufgezeichnet ( im Modell erwähnt ) .


AGGREGATION


Eine Beziehung zwischen E-Typen wird zu einem
übergeordnetem E-Typen zusammengefasst, der in

µ
Beziehung zu anderen E-Typen stehen kann!

Originalversion
mc MC

U2
Artikel liegt Laser

Tipp
in

VLG
_

: t

mc

/ M
zuständig Mitarbeiter

t.no#dka
Mitarbeiter
kann fürmc Artikel

zuständig sein nn von

m Mitarbeitern betreut werden

REKURSION

Umsetzung einer Beziehung zwischen Objekten des gleichen E-Typen

Also: wenn laut Aufgabenstellung Objekte in Beziehung


zu sich selbst stehen

Tipp : ÜL
Fünte
Studie -

tretend
render "°"
ist in Freundes -

liste von mc
SNR , Name

t
Kardinalitäten beziehen
sich hier direkt auf
die Kante !
SQL

Basistabellen Mutationen von


Datensätzen

/
Erzeugen Ändern Löschen Einfügen Ändern Löschen
(CREATE TABLE) (ALTER TABLE) (DROP TABLE) (INSERT) (UPDATE) (DELETE)

(
o
BASICS

CREATE TABLE <tabellenname> (


Null =
nichts ; Not Null =
Feld darf nicht leer sein

}
<spaltenname> DATENTYP [NOT NULL],
alle Attribute
... aufzählen
<spaltenname> DATENTYP [NOT NULL],

§ Nebenbedingung Aufzählung Primär Schlüssel


CONSTRAINT <constraint name> PRIMARY KEY (<spaltenname>, ..., <spaltenname>),

€ Nebenbedingung Aufzählung Fremdschlüssel

CONSTRAINT <constraint name> FOREIGN KEY (<spaltenname>, ..., <spaltenname>)


REFERENCES <tabellenname> (<spaltenname>, ..., <spaltenname>),
F woher kommt der FK ?

"

bedingung
"

{ Nebenbedingung {
if true , dann
Einfügung des Datensatzes erlaubt

CONSTRAINT <constraintname> CHECK <bedingung>


);

ART DATENTYP INHALT BEISPIELE


INTEGER ganze Zahl 0 / -1 / 1234
numerisch 0.0 / -12.34 /
DECIMAL (x,y) Dezimalzahl
12.3456
Kette mit genau
CHAR (n) ´aZ6~?´ / ´Test´
Zeichen n Zeichen
Text Kette mit bis
VARCHAR (n) ´aZ6~?´ / ´Test´
zu n Zeichen
DATE Datumswert ´2020-12-31‘
Datum TIME Zeitwert ´23:59:59´
Zeit
TIMESTAMP Datum & Zeit´2020-12-31
23:59:59´
binär BOOLEAN logischer Wert TRUE / FALSE
VERGLEICHS OPERATOREN
! Reihenfolge beim Anlegen der Tabelle wichtig
für die referentielle Integrität! < >

gleich
=

! =
ungleich
1. unabhängige E-Typen anlegen
>
größer >
größer gleich
=

2. abhängige E-Typen mit 1-Kante anlegen


3. R-Typen kleiner Kleiner
< <
gleich
=

ÄNDERN bereits angelegter Tabellen

← Tabelle soll weiteres Attribut bekommen

ALTER TABLE <tabellenname> ADD COLUMN <spaltendefinition>;

← Attribut wieder löschen

ALTER TABLE <tabellenname> DROP <spaltenname>;

( primarykey
← Nebenbedingung , foreign Key ,
.
. .
)

ALTER TABLE <tabellenname> ADD CONSTRAINT <constraintdefinition>;

← Nebenbedingung löschen

ALTER TABLE <tabellenname> DROP CONSTRAINT <constraintdefinition>;

{
Default weit hinzufügen
ALTER TABLE <tabellenname> ALTER <spaltenname> SET DEFAULT <defaultwert>;

{ Defaultwerte löschen

ALTER TABLE <tabellenname> ALTER <spaltenname> DROP DEFAULT;

LÖSCHEN von Tabellen

DROP TABLE <tabellenname>,


^
-
Reihenfolge beim Löschen ,
1. abhängige Tabellen @

R-Typen
E-Typen mit 1-Kante
2. unabhängige Tabellen
E-Typen
EINFÜGEN von Datensätzen

INSERT INTO <tabellenname> [(<spaltenname>, ...)]


VALUES (<werteliste>);

× Reihenfolge beim Anlegen


1. unabhängige Datensätze !
E-Typen
2. abhängige Tabellen
E-Typen mit 1-Kante
R-Typen
Beispiel: Werte in Tabelle „Stadt“ einfügen

INSERT INTO stadt


VALUES (1 , ´Dortmund´, 1 );

ÄNDERN von Datensätzen

UPDATE <tabellenname>
SET <spaltenname> = <ausdruck> [,<spaltenname> = <ausdruck> ...]
[WHERE <bedingung>];

×
Beispiel: Tippfehler korrigieren

UPDATE stadt
SET name = ´Dortmund´
WHERE name = ´Dortnumd´;

LÖSCHEN von Datensätzen

DELTE FROM <tabellenname>


[WHERE <bedingung>];
r
\ Reihenfolge beim Löschen
1. abhängige Datensätze
ch
R-Typen
E-Typen mit 1-Kante
2. unabhängige Datensätze
E-Typen
Beispiel: Lösche Eintrag aus Tabelle „Typ“

DELETE FROM typ


WHERE bezeichnung = ´Gesamthochschule´;


AUSLESEN von Datensätzen Klo stelle 00:46:00

SELECT [DISTRINCT] * | <tabellenname>.<spaltenname>,


<tabellenname>.<spaltenname> [, ...]
FROM <tabellenname> [, ...]
[WHERE <bedingung>]
[GROUP BY <attributname> [, ...]]
[HAVING <bedingung>]
[ORDER BY <attributname> [ASC|DESC]];

aufsteigend absteigend
Beispiel: Städte alphabetisch sortiert ausgeben

SELECT name FROM stadt ORDER BY name;

Beispiel: Städte beginnend mit D ausgeben

SELECT name FROM stadt WHERE name LIKE ´D%´;

JOINS :
Verbund aus mehreren Tabellen

• Schnittmenge aus zwei oder mehreren Tabellen, die sich hinsichtlich eines
Attributs oder einer Attributkombi überschneiden

• notwendig, um zusammenhängende Infos zusammenzutragen

Beispiel: Alle Hochschulen in NRW aus Städten mit D ausgeben

SELECT hochschule.name FROM bundesland, stadt, hochschule


£ den Namen Hochschule
gebe aus aus

[ Bedingungen
WHERE bundesland.blnr = stadt.blnr

£ blnr Tabelle Bundesland der blnr Stadt


aus muss gleich aus sein

AND stadt.stnr = hochschule.stnr


d

\ stnr
. . . und aus Stadt der stnr aus Hochschule

AND bundesland.name = ´NRW´

Ü . . .
und in Spalte name in Bundesland muss NRW stehen

AND stadt.name LIKE ´D%´;

F. und der Name


. . in Stadt beginnt mit D
AGGREGAT FUNKTIONEN

COUNT ( ) Anzahl der DS/Zeilen, die den def. WHERE-Bed. genügen

MIN ( ) Kleinster Wert, der in der Spalte steht

MAX ( ) Größter Wert, der in der Spalte steht

SUM ( ) Summe aller Werte, die in einer Spalte stehen

AVG ( ) Durchschnitt aller Werte, die in einer Spalte stehen

Beispiel: Anzahl aller Hochschulen ausgeben

SELECT COUNT (name) FROM hochschule;

Beispiel: Anzahl aller Hochschulen pro Stadt

SELECT stadt.name, COUNT (*) FROM stadt, hochschule

Ü Werte
gibt alle aus

WHERE stadt.stnr = hochschule.stnr


GROUP BY stadt.name;

Powered by TCPDF (www.tcpdf.org)

Das könnte Ihnen auch gefallen