Vorlesung Datenbankmanagementsysteme

Größe: px
Ab Seite anzeigen:

Download "Vorlesung Datenbankmanagementsysteme"

Transkript

1 Vorlesung Datenbankmanagementsysteme Relationale Datenbanken Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-1

2 Relationale Datenbanken Wiederholung - Datenbankmodelle, ER-Modellierung Relationenmodell - Konzept, Begriffe Datendefinition mit SQL - create table Relationenalgebra - Selektion, Projektion, Verbund, SQL als Anfragesprache - select-from-where-block, update, delete, insert Zusammenfassung Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-2

3 Wiederholung Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-3

4 Datenbankmodelle Grundlagen von Datenbankmodellen - Datenbankmodell System von Konzepten zur Beschreibung von Datenbanken Festlegung von Syntax und Semantik von Datenbankbeschreibungen für ein Datenbanksystem - Datenbankbeschreibungen = Datenbankschemata Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-4

5 Datenbankmodelle II Arten von Datenbankmodellen - Klassische Datenbankmodelle sind speziell geeignet für große Informationsmengen mit relativ starrer Struktur und die Darstellung statischer Eigenschaften und Integritätsbedingungen - Entwurfsmodelle (abstrakt, erste formale Beschreibung des Fachproblems) (E)ER-Modell UML, - Realisierungsmodelle (konkret) Relationenmodell objektorientierte Modelle, Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-5

6 Datenbankentwurf im ER-Modell Entity-Relationship-Modelle (ERM) - Entwurfsdatenmodel (keine Anfragesprache und kein DBMS) - Beliebt zur konzeptuellen Modellierung beim Datenbankentwurf - Nutzung durch viele Entwurfswerkzeuge - Bildhafte Darstellung von ER-Schemata (ER-Diagramme) - Übersetzungsalgorithmus zum relationalen Modell - Viele ERM-Varianten Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-6

7 Datenbankentwurf im ER-Modell II Grundlegende Konzepte - Entity Objekt der realen oder der Vorstellungswelt, über das Informationen zu speichern sind z.b. Vorlesungsveranstaltung, Buch, Lehrperson, Produkte, oder Informationen über Ereignisse: Prüfungen, Bestellungen - Relationship Beschreibung einer Beziehung zwischen Entities z.b. eine Lehrperson hält eine Vorlesung, Kunde bestellt ein Album - Attribut Repräsentation einer Eigenschaft von Entities oder Beziehungen z.b. die ISBN eines Buchs, der Titel einer Vorlesung, oder das Semester, in dem eine Vorlesung gehalten wird Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-7

8 Grundkonzepte des ERM Entities - Entities sind die in einer Datenbank zu repräsentierenden Informationseinheiten - Im Gegensatz zu Werten nicht direkt darstellbar, sondern nur über ihre Eigenschaften beobachtbar - Entities sind eingeteilt in Entity-Typen, etwa E1, E2, - Menge der aktuellen Entities: σ(e 1 ) = {e 1, e 2,..., e n } [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-12] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-8

9 Grundkonzepte des ERM II Attribute - Attribute modellieren Eigenschaften von Entities oder auch Beziehungen - Alle Entities eines Entity-Typs haben dieselben Arten von Eigenschaften - Attribute werden somit für Entity-Typen deklariert - textuelle Notation: E(A 1 : D 1,..., A m : D m ) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-13] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-9

10 Grundkonzepte des ERM III Identifizierung durch Schlüssel - Schlüsselattribute: Teilmenge der gesamten Attribute eines Entity-Typs E(A 1,,A m ) {S 1,, S k } {A 1,, A m } - In jedem Datenbankzustand identifizieren die aktuellen Werte der Schlüsselattribute eindeutig Instanzen des Entity-Typs E - Bei mehreren möglichen Schlüsselkandidaten: Auswahl eines Primärschlüssels - Notation durch Markieren mit Unterstreichung: E(, S 1,, S i, ) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-10

11 Grundkonzepte des ERM IV Beziehungstypen - Beziehungen zwischen Entities werden zu Beziehungstypen zusammengefasst - Allgemein: beliebige Anzahl n 2 von Entity-Typen kann an einem Beziehungstyp teilhaben - Zu jedem n-stelligen Beziehungstyp R gehören n Entity-Typen E 1,, E n - Ausprägung eines Beziehungstyps: σ(r) σ(e 1 ) σ(e 2 ) σ(e n ) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-11

12 Grundkonzepte des ERM V Beziehungstypen (Forts.) - Beispiel - textuelle Notation: R(E 1, E 2,, E n ) - wenn Entity-Typ mehrfach an einem Beziehungstyp beteiligt: Vergabe von Rollennamen möglich verheiratet(frau: Person, Mann: Person) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-16] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-12

13 Beziehungen Merkmale - Stelligkeit oder Grad: Anzahl der beteiligten Entity-Typen häufig binär Beispiel: Lieferant liefert Produkt - Kardinalität oder Funktionalität: Anzahl der eingehenden Instanzen eines Entity-Typs Formen: 1:1, 1:n, m:n stellt Integritätsbedingung dar Beispiel: maximal 5 Produkte pro Bestellung Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-13

14 Stelligkeit von Beziehungen Zwei- vs. mehrstellige Beziehungen [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-19] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-14

15 Kardinalität von Beziehungen 1:1-Beziehungen - Jedem Entity e 1 vom Entity-Typ E 1 ist maximal ein Entity e 2 aus E 2 zugeordnet und umgekehrt - Beispiele: Prospekt beschreibt Produkt Mann ist verheiratet mit Frau [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-22] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-15

16 Kardinalität von Beziehungen II 1:n-Beziehungen - Jedem Entity e 1 vom Entity-Typ E 1 sind beliebig viele Entities E 2 zugeordnet, aber zu jedem Entity e 2 gibt es maximal ein e 1 aus E 1 - Beispiele: Lieferant liefert Produkt Mutter hat Kinder [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-23] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-16

17 Kardinalität von Beziehungen III n:1-beziehungen - Invers zu 1:n, auch funktionale Beziehung - Zweistellige Beziehungen, die eine Funktion beschreiben: Jedem Entity eines Entity-Typs E 1 wird maximal ein Entity eines Entity-Typs E 2 zugeordnet. [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-24] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-17

18 Kardinalität von Beziehungen IV m:n-beziehungen - Keine Restriktionen - Beispiel: Bestellung umfasst Produkte [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-25] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-18

19 Kardinalität von Beziehungen V Einschränkung der möglichen Teilnahmen von Instanzen der beteiligten Entity- Typen an der Beziehung, durch Vorgabe eines minimalen und eines maximalen Wertes Notation für Kardinalitätsangaben an einem Beziehungstyp R(E 1,, E i [min i, max i ],, E n ) Kardinalitätsbedingung: min i {r r R r.e i = e i } max i Spezielle Wertangabe für max i ist * [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 4-26] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-19

20 Relationenmodell Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-20

21 Relationenmodell - Einordnung Mengenorientierte Schnittstelle Satzorientierte Schnittstelle Interne Satzschnittstelle Systempuffer- Schnittstelle Datei- Schnittstelle Geräte- Schnittstelle Datensystem Zugriffssystem Speichersystem Pufferverwaltung Betriebssystem Übersetzung, Zugriffpfadauswahl, Zugriffskontrolle, Integritätskontrolle Data Dictionary, Currency Pointer, Sortierung, Transaktionsverwaltung Record Manager, Zugriffpfadverwaltung Sperrverwaltung, Log/Recovery Systempufferverwaltung mit Seitenwechselstrategie Externspeicherverwaltung Relationen, Sichten Externe Sätze, Index-Strukturen Interne Sätze, Bäume, Hashtab. Segmente, Seiten Dateien, Blöcke Zylinder, Spuren Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-21

22 Relationenmodell 1970 von Codd vorgestellt Konzeptuell: Datenbank als Menge von Tabellen Tabelle = Relation [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-2] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-22

23 Relationenmodell II Darstellung von Relationen - Tabellenkopf: Relationenschema - Weitere Einträge in der Tabelle: Relation - Eine Zeile der Tabelle: Tupel - Eine Spaltenüberschrift: Attribut, ein Eintrag: Attributwert - Nur atomare Attributwerte erlaubt erste Normalform (1NF), flache Relation [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-3] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-23

24 Beispiel zur Begriffsklärung Relationenmodell III [Quelle: Elmasri, Navathe: Grundlagen von Datenbanksystemen, Pearson Studium, 2002.] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-24

25 Relationenmodell IV Integritätsbedingungen: Schlüssel - Attribute einer Spalte identifizieren eindeutig gespeicherte Tupel Schlüsseleigenschaft - Beispiel: MNr für Tabelle Musiker - Auch Attributkombinationen können Schlüssel sein! - Schlüssel können durch Unterstreichen gekennzeichnet werden [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-4] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-25

26 Relationenmodell V Integritätsbedingungen: Fremdschlüssel - Schlüssel einer Tabelle können in einer anderen (oder derselben!) Tabelle als eindeutige Verweise genutzt werden Fremdschlüssel, referenzielle Integrität - Ein Fremdschlüssel ist ein Schlüssel in einer fremden Tabelle - Beispiel: MNr in Album als Verweise auf Musiker [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-6] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-26

27 Relationenmodell VI Beispiel zur referenziellen Integrität [Quelle: Elmasri, Navathe: Grundlagen von Datenbanksystemen, Abb. 7.7, Pearson Studium, 2002.] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-27

28 Relationenmodell VII Begriffe des Relationenmodells Begriff Attribut Wertebereich Attributwert Relationenschema Relation Tupel Datenbankschema Datenbank Schlüssel Primärschlüssel Fremdschlüssel Fremdschlüsselbedingung Informale Bedeutung Spalte einer Tabelle mögliche Werte eines Attributs (auch Domäne) Element eines Wertebereichs Menge von Attributen Menge von Zeilen einer Tabelle Zeile einer Tabelle Menge von Relationenschemata Menge von Relationen minimale Menge von Attributen, deren Werte ein Tupel einer Tabelle eindeutig identifizieren ein beim Datenbankentwurf ausgezeichneter Schlüssel Attributmenge, die in einer anderen Relation Schlüssel ist alle Attributwerte des Fremdschlüssels tauchen in der anderen Relation als Werte des Schlüssels auf Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-28

29 Datendefinition mit SQL Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-29

30 Datendefinition mit SQL Datendefinitionssprachen - DDL (Data Definition Languages) - Werkzeug zum Umsetzen eines Datenbankschemas in ein konkretes DBS - SQL-DDL als Teilmenge von SQL zur Definition von Typen, Wertebereichen, Relationenschemata und Integritätsbedingungen - Anforderungen an eine relationale DDL (Codd 1982, 1990) Definition von Attributen Wertebereichen Relationenschemata Primärschlüsseln Fremdschlüsseln - SQL auch Norm-Datenbanksprache für relationale DBS Datendefinition, Anfrage, Sichtdefinition, Dateiorganisation und Zugriffspfade, Datenmanipulation Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-30

31 Datendefinition mit SQL II SQL-DDL-Konzepte - Externe Ebene create view drop view - Konzeptuelle Ebene create table alter table drop table auch create/alter/drop domain (SQL-92) - Interne Ebene create index alter index drop index Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-31

32 create-table-anweisung Definition eines Relationenschematas Wirkung dieses Kommandos - Ablage des Relationenschemas im Data Dictionary - Vorbereitung einer leeren Basisrelation in der Datenbank Syntax für einfachste Form create table basisrelationenname( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-32

33 create-table-anweisung II Wertebereiche - Nutzung vordefinierter Wertebereiche - Einsatz benutzerdefinierter Wertebereiche (create domain in SQL-92) Klausel not null - Ausschluss von Nullwerten als Attributwerte für bestimmte Spalten - null repräsentiert die Bedeutung Wert unbekannt, Wert nicht anwendbar oder Wert existiert nicht, gehört aber zu keinem Wertebereich - null kann in allen Spalten auftauchen, außer in Schlüsselattributen und den mit not null gekennzeichneten Beispiel create table Musiker ( MNr int primary key, Name varchar(20), Land varchar(30)); Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-33

34 create-table-anweisung III Mögliche Wertebereiche in SQL - integer (oder auch integer4, int) - smallint (oder auch integer2) - float(p) (oder auch kurz float) - decimal(p,q) und numeric(p,q) mit jeweils q Nachkommastellen - character(n) (oder kurz char(n), bei n = 1 auch char) für Zeichenketten (Strings) fester Länge n - character varying(n) (oder kurz varchar(n) für Strings variabler Länge bis zur Maximallänge n - bit(n) oder bit varying(n) analog für Bitfolgen - date, time bzw. timestamp für Datums-, Zeit- und kombinierte Datums-Zeit- Angaben Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-34

35 create-table-anweisung IV Primär- und Fremdschlüssel - Seit SQL-89 Level 2 mit IEF (Integrity Enhancement Feature) - primary key kennzeichnet Spalte als Schlüsselattribut (impliziert not null) ausgezeichneter Schlüssel, Primärschlüssel - foreign key kennzeichnet Spalte als Fremdschlüssel Beispiel create table Album ( ANr int primary key, Titel varchar(50) not null, Jahr int not null, Genre varchar(10), Preis decimal(6,2), MNr int, foreign key (MNr) references Musiker (MNr)); Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-35

36 create-table-anweisung V Weiteres zur Datendefinition in SQL - Neben Primär- und Fremdschlüsseln können in SQL angegeben werden mit der default-klausel Defaultwerte für Attribute mit der create domain-anweisung benutzerdefinierte Wertebereiche mit der check-klausel weitere lokale Integritätsbedingungen innerhalb der zu definierenden Wertebereiche, Attribute und Relationenschemata Beispiel Wertebereich und check-klausel create domain Gebiete varchar(20) default Informatik check (value in ( Informatik, Mathematik, Elektrotechnik, Linguistik )); create table Vorlesungen ( Bezeichnung varchar(80) primary key, SWS smallint check (SWS >= 0), Studiengang Gebiete); Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-36

37 Relationenalgebra Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-37

38 Relationenalgebra Anfrageoperationen auf Tabellen - Basisoperationen auf Tabellen, die die Berechnung von neuen Ergebnistabellen aus gespeicherten Datenbanktabellen erlauben - Operationen werden zur sogenannten Relationenalgebra zusammengefasst - Mathematik: Algebra ist definiert durch Wertebereich sowie darauf definierten Operationen für Datenbankanfragen entsprechen die Inhalte der Datenbank den Werten, Operationen sind dagegen Funktionen zum Berechnen der Anfrageergebnisse - Anfrageoperationen sind beliebig kombinierbar und bilden eine Algebra zum Rechnen mit Tabellen die sogenannte relationale Algebra oder auch Relationenalgebra Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-38

39 Relationenalgebra II Übersicht der Basisoperationen [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-14] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-39

40 Selektion Selektion: Auswahl von Zeilen einer Tabelle anhand eines Selektionsprädikats σ Jahr=2006 (Album) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-15] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-40

41 Projektion Projektion: Auswahl von Spalten durch Angabe einer Attributliste Entfernung doppelter Tupel π Land (Musiker) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-16] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-41

42 Natürlicher Verbund Verbund (engl. join): verknüpft Tabellen über gleichbenannten Spalten, indem er jeweils zwei Tupel verschmilzt, falls sie dort gleiche Werte aufweisen Tokio Hotel ist im Ergebnis verschwunden Tupel, die keinen Partner finden (dangling tuples), werden eliminiert Album Musiker [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-17] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-42

43 Kombination von Operationen σ Jahr>2003 (Album) σ Land= Deutschland (Musiker) π Titel,Jahr,Mnr (σ Jahr>2003 (Album)) π Titel,Jahr,Mnr (σ Jahr>2003 (Album)) σ Land= Deutschland (Musiker) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-18] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-43

44 Umbennenung Anpassung von Attributnamen mittels Umbennung Angleichen durch β Name Nachname (Komponist) Beispiel: vor Mengenoperation [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-19] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-44

45 Mengenoperationen: Vereinigung Vereinigung r 1 r 2 von zwei Relationen r 1 und r 2 : sammelt die Tupelmengen zweier Relationen unter einem gemeinsamen Schema auf Attributmengen beider Relationen müssen identisch sein Musiker β Name Nachname (Komponist) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-20] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-45

46 Mengenoperationen: Differenz Differenz r 1 - r 2 eliminiert die Tupel aus der ersten Relation, die auch in der zweiten Relation vorkommen (β Name Nachname (Komponist))-Musiker [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-21] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-46

47 Mengenoperationen: Durchschnitt Durchschnitt r 1 r 2 : ergibt die Tupel, die in beiden Relationen gemeinsam vorkommen Musiker β Name Nachname (Komponist) [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-22] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-47

48 SQL als Anfragesprache Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-48

49 SQL als Anfragesprache Anfrage an eine einzelne Tabelle select Titel, Jahr from Album where Genre = Rock SQL hat Multimengensemantik Duplikate in Tabellen werden in SQL nicht automatisch unterdrückt Mengensemantik durch distinct select distinct Land from Musiker Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-49

50 Verknüpfung von Tabellen Kreuzprodukt als Basisverknüpfung select * from Album, Musiker Verbund durch Angabe einer Verbundbedingung select * from Album, Musiker where Album.MNr = Musiker.MNr Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-50

51 Kombination von Bedingungen Ausdruck in Relationenalgebra π Titel,Jahr,Mnr (σ Jahr>2003 (Album)) σ Land= Deutschland (Musiker) Anfrage in SQL select Titel, Jahr, Album.MNr, Name, Land from Album, Musiker where Jahr > 2003 and Land = Deutschland and Album.MNr = Musiker.MNr Basisrelationen [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-2] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-51

52 Mengenoperationen in SQL Vereinigung in SQL explizit mit union select Name, Vorname from Musiker union select Nachname as Name, Vorname from Komponist Differenzbildung durch geschachtelte Anfragen select * from Musiker where Name not in ( select Nachname from Komponist) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-52

53 Änderungsoperationen insert: Einfügen eines oder mehrerer Tupel in eine Basisrelation oder Sicht update: Ändern eines oder mehrerer Tupel in einer Basisrelation oder Sicht delete: Löschen eines oder mehrerer Tupel aus einer Basisrelation oder Sicht Integritätsbedingungen müssen bei Änderungsoperationen automatisch vom System überprüft werden Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-53

54 update-anweisung Syntax Beispiel update basisrelation set attribut 1 = ausdruck 1, attribut n = ausdruck n [where bedingung] update Album set Preis = Preis 2,50 where Jahr < ,95 2,50 = 10,45 [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-2] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-54

55 update-anweisung II Realisierung von Eintupel-Operationen mittels Primärschlüssel update Album set Preis = Preis * 0.9 where ANr = 1021 Änderung der gesamten Relation update Album set Genre = Rock [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-2] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-55

56 delete-anweisung Syntax delete from basisrelation [where bedingung] Löschen eines Tupels in der Musiker-Relation delete from Musiker where Name = Tokio Hotel Löschen mehrerer Tupel delete from Album where Genre = Pop Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-56

57 delete-anweisung II Löschen der gesamten Relation delete from Album Löschoperationen können zur Verletzung von Integritätsbedingungen führen Beispiel: Verletzung der Fremdschlüsseleigenschaft, falls es noch Alben von diesem Musiker gibt delete from Musiker where Name = Subway To Sally [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-2] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-57

58 insert-anweisung Syntax insert into basisrelation [(attribut 1,, attribut n )] values (konstante 1,, konstante n ) Optionale Attributliste ermöglicht das Einfügen von unvollständigen Tupeln insert into Musiker (MNr, Name) values (110, In Extremo ) Nicht alle Attribute angegeben Wert des fehlenden Attributes Land wird null Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-58

59 insert-anweisung II Einfügen von berechneten Daten insert into basisrelation [(attribut 1,, attribut n )] SQL-Anfrage Beispiel insert into Album (Anr, Titel, Jahr, Genre, MNr) (select SNr, Titel, Jahr, Rock, MNr from Singles where Genre = Rock ) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-59

60 Zusammenfassung Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-60

61 Relationenmodell Darstellung von Relationen - Tabellenkopf: Relationenschema - Weitere Einträge in der Tabelle: Relation - Eine Zeile der Tabelle: Tupel - Eine Spaltenüberschrift: Attribut, ein Eintrag: Attributwert - Nur atomare Attributwerte erlaubt erste Normalform (1NF), flache Relation [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-3] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-61

62 Datendefinition mit SQL create table: Definition eines Relationenschematas Wirkung dieses Kommandos - Ablage des Relationenschemas im Data Dictionary - Vorbereitung einer leeren Basisrelation in der Datenbank Syntax für einfachste Form create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Primär- und Fremdschlüssel Wertebereiche, Klausel not null default-klausel (Defaultwerte für Attribute) check-klausel (Bedingungen) Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-62

63 Relationenalgebra Anfrageoperationen auf Tabellen - Basisoperationen auf Tabellen, die die Berechnung von neuen Ergebnistabellen aus gespeicherten Datenbanktabellen erlauben - Anfrageoperationen sind beliebig kombinierbar und bilden eine Algebra zum Rechnen mit Tabellen die sogenannte relationale Algebra oder auch Relationenalgebra - Selektion, Projektion, Verbund, Umbenennung, Mengenoperationen [Quelle: Heuer, Saake: Foliensatz Datenbanken I, 3-14] Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-63

64 SQL als Anfragesprache Grundkonzepte von SQL-Anfragen und -Änderungen select: Anfragen auf Basisrelationen oder Sichten distinct für Mengensemantik Kreuzprodukt und Verbund Mengenoperationen insert: Einfügen eines oder mehrerer Tupel in eine Basisrelation oder Sicht update: Ändern von einem oder mehreren Tupel in einer Basisrelation oder Sicht delete: Löschen eines oder mehrerer Tupel aus einer Basisrelation oder Sicht Integritätsbedingungen müssen bei Änderungsoperationen automatisch vom System überprüft werden Vorlesung Datenbankmanagementsysteme Relationale Datenbanken M. Lange, S. Weise Folie #4-64

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

Die Anweisung create table

Die Anweisung create table SQL-Datendefinition Die Anweisung create table create table basisrelationenname ( spaltenname 1 wertebereich 1 [not null],... spaltenname k wertebereich k [not null]) Wirkung dieses Kommandos ist sowohl

Mehr

Teil III. Relationale Datenbanken Daten als Tabellen

Teil III. Relationale Datenbanken Daten als Tabellen Teil III Relationale Datenbanken Daten als Tabellen Relationale Datenbanken Daten als Tabellen 1 Relationen für tabellarische Daten 2 SQL-Datendefinition 3 Grundoperationen: Die Relationenalgebra 4 SQL

Mehr

7. Datenbankdefinitionssprachen

7. Datenbankdefinitionssprachen 7. Datenbankdefinitionssprachen SQL-DDL Teil der Standardsprache für relationale Datenbanksysteme: SQL ODL (Object Definition Language) für objektorientierte Datenbanksysteme nach dem ODMG-Standard VL

Mehr

Teil II Relationale Datenbanken Daten als Tabellen

Teil II Relationale Datenbanken Daten als Tabellen Teil II Relationale Datenbanken Daten als Tabellen Relationale Datenbanken Daten als Tabellen 1 Relationen für tabellarische Daten 2 SQL-Datendefinition 3 Grundoperationen: Die Relationenalgebra 4 SQL

Mehr

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

3. Das Relationale Datenmodell

3. Das Relationale Datenmodell 3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie

Mehr

Kapitel DB:III. III. Konzeptueller Datenbankentwurf

Kapitel DB:III. III. Konzeptueller Datenbankentwurf Kapitel DB:III III. Konzeptueller Datenbankentwurf Einführung in das Entity-Relationship-Modell ER-Konzepte und ihre Semantik Charakterisierung von Beziehungstypen Existenzabhängige Entity-Typen Abstraktionskonzepte

Mehr

5.3 Datenänderung/-zugriff mit SQL (DML)

5.3 Datenänderung/-zugriff mit SQL (DML) 5.3 Datenänderung/-zugriff mit SQL (DML) Hinweis: - DML-Anweisungen sind mengenorientiert - Mit einer Anweisungen kann mehr als ein Tupel eingefügt, geändert, gelöscht oder gelesen werden Benutzungs- und

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

9. Einführung in Datenbanken

9. Einführung in Datenbanken 9. Einführung in Datenbanken 9.1 Motivation und einführendes Beispiel 9.2 Modellierungskonzepte der realen Welt 9.3 Anfragesprachen (Query Languages) 9.1 Motivation und einführendes Beispiel Datenbanken

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Relationaler Datenbankentwurf I Vorlesung Datenbankmanagementsysteme Relationaler Datenbankentwurf I M. Lange, S. Weise Folie #5-1 Wiederholung Relationaler Datenbankentwurf

Mehr

Datenbanken: Relationales Datenbankmodell RDM

Datenbanken: Relationales Datenbankmodell RDM Das RDM wurde in den 70'er Jahren von Codd entwickelt und ist seit Mitte der 80'er Jahre definierter Standard für Datenbanksysteme! Der Name kommt vom mathematischen Konzept einer Relation: (Sind A, B

Mehr

Software-Engineering Einführung

Software-Engineering Einführung Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab

Mehr

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I

SQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit

Mehr

Datenbankmodelle 1. Das Entity-Relationship-Modell

Datenbankmodelle 1. Das Entity-Relationship-Modell Datenbankmodelle 1 Das Entity-Relationship-Modell Datenbankmodelle ER-Modell hierarchisches Modell Netzwerkmodell relationales Modell objektorientierte Modelle ER Modell - 2 Was kann modelliert werden?

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL als Anfrage- und Datenmanipulationssprache (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL als DQL und DML M. Lange, S. Weise Folie #8-1 Themen

Mehr

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert

Ein Schlüssel ist eine Menge von Attributen (also eines oder mehrere), die eine Datenzeile (Tupel) einer Tabelle eindeutig identifiziert Maika Büschenfeldt Datenbanken: Skript 1 1. Was ist eine relationale Datenbank? In Datenbanken können umfangreiche Datenbestände strukturiert abgelegt werden. Das Konzept relationaler Datenbanken soll

Mehr

Rückblick: Datenbankentwurf

Rückblick: Datenbankentwurf Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände

Mehr

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join

Einleitung Projektion Selektion Join Mengenop. Vollst.keit. Einleitung Projektion. Selektion Join. Vollst.keit. Einleitung Projektion Selektion Join Parsen der Anfrage (SQL) Transformation in eine Standardform (Relationenalgebra) Logische Optimierung Transformation in alternative Zugriffspläne, Physische Optimierung Ausführung des gewählten Zugriffsplans

Mehr

DB-Entwurf im ER-Modell

DB-Entwurf im ER-Modell DB-Entwurf im 1 Datenbankentwurf 2 Datenbankmodell 3 4 Erweiterungen des s 5 Weiteres Vorgehen beim Entwurf Sattler / Saake Datenbanksysteme Wintersemester 2006/7 4 1 Datenbankentwurf Entwurfsaufgabe Datenhaltung

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

Referenzielle Integrität SQL

Referenzielle Integrität SQL Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL. Datenintegrität Arten von Integritätsbedingungen Statische Integritätsbedingungen Referentielle Integrität Integritätsbedingungen in SQL Trigger 1 Datenintegrität Einschränkung der möglichen Datenbankzustände

Mehr

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank

Sichten II. Definition einer Sicht. Sichten. Drei-Ebenen-Schema-Architektur. Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Vorteile Vereinfachung von Anfragen Strukturierung der Datenbank Sichten II logische Datenunabhängigkeit (Sichten stabil bei Änderungen der Datenbankstruktur) Beschränkung von Zugriffen (Datenschutz) Definition

Mehr

Schlüssel bei temporalen Daten im relationalen Modell

Schlüssel bei temporalen Daten im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell Gesine Mühle > Präsentation > Bilder zum Inhalt zurück weiter 322 Schlüssel im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell

Mehr

Relationale Datenbanken in der Praxis

Relationale Datenbanken in der Praxis Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5

Mehr

Teil III Entity-Relationship-Modell

Teil III Entity-Relationship-Modell Teil III Entity-Relationship-Modell Entity-Relationship-Modell 1 Datenbankmodell 2 ER-Modell 3 Weitere Konzepte im ER-Modell Sattler / Saake Datenbanksysteme Letzte Änderung: Okt. 2016 3 1 Lernziele für

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme ER-Modellierung M. Lange, S. Weise Folie #3-1 ER-Modellierung Wiederholung - Drei-Ebenen-Schema-Architektur - ANSI-SPARC-Architektur - Fünf-Schichten-Architektur ER-Modellierung

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Datenbanken. Sommersemester 2010 Probeklausur

Datenbanken. Sommersemester 2010 Probeklausur Prof. Dr. V. Linnemann Christoph Reinke Universität zu Lübeck Institut für Informationssysteme Lübeck, den 29. Juli 2010 Datenbanken Sommersemester 2010 Probeklausur Hinweise: Es ist sinnvoll, die Aufgaben

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

Kapitel DB:VI (Fortsetzung)

Kapitel DB:VI (Fortsetzung) Kapitel DB:VI (Fortsetzung) VI. Die relationale Datenbanksprache SQL Einführung SQL als Datenanfragesprache SQL als Datendefinitionssprache SQL als Datenmanipulationssprache Sichten SQL vom Programm aus

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:

Mehr

Inhaltsverzeichnis. 1. Fragestellung

Inhaltsverzeichnis. 1. Fragestellung Inhaltsverzeichnis 1. Fragestellung... 1 2. Herleitung zum Thema... 1 3. Das Entity Relationship Modell (ERM)... 2 4. Praktisches Beispiel zum ERM... 7 5. Anhang...Fehler! Textmarke nicht definiert. 1.

Mehr

SQL und MySQL. Kristian Köhntopp

SQL und MySQL. Kristian Köhntopp SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)

Mehr

Einführung in das Entity-Relationship-Modell

Einführung in das Entity-Relationship-Modell Einführung in das Entity-Relationship-Modell Historie Entity-Relationship-Modell kurz: ER-Modell bzw. ERM 1976 von Peter Chen vorgeschlagen Standardmodell für frühe Entwurfsphasen in der Datenbankentwicklung

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2014 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

3. Übung. Einführung MS Access. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1

3. Übung. Einführung MS Access. TU Dresden - Institut für Bauinformatik Folie-Nr.: 1 WP3-13 Bauinformatik-Vertiefte Grundlagen 3. Übung Einführung MS Access Folie-Nr.: 1 Allgemeines Microsoft Access ist ein Datenbank-Management-System (DBMS) zur Verwaltung von Daten in Datenbanken und

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2013 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5

Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken

Profilbezogene informatische Bildung in den Klassenstufen 9 und 10. Schwerpunktthema Daten und Datenbanken Profilbezogene informatische Bildung in den Klassenstufen 9 und 10 Schwerpunktthema Robby Buttke Fachberater für Informatik RSA Chemnitz Fachliche Einordnung Phasen relationaler Modellierung Fachlichkeit

Mehr

Kapitel 2: Das Relationale Modell

Kapitel 2: Das Relationale Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2006/2007 Kapitel 2: Das Relationale Modell Vorlesung:

Mehr

6. Datenintegrität. Integritätsbedingungen

6. Datenintegrität. Integritätsbedingungen 6. Integritätsbedingungen dienen zur Einschränkung der Datenbankzustände auf diejenigen, die es in der realen Welt tatsächlich gibt. sind aus dem erstellten Datenmodell ableitbar (semantisch) und können

Mehr

2. Datenmodellierung mit ERM. Motivation für Datenmodellierung. Begriffsklärung. Kardinalität/Komplexität von Beziehungstypen

2. Datenmodellierung mit ERM. Motivation für Datenmodellierung. Begriffsklärung. Kardinalität/Komplexität von Beziehungstypen 2. Datenmodellierung mit ERM Motivation für Datenmodellierung Begriffsklärung Kardinalität/Komplexität von Beziehungstypen Erweiterungen des E/R-Modells Darstellung von Attributen/Beziehungen als Entitytypen

Mehr

Einleitung create table Integritätsbed. alter/ drop table Index ODL. Einleitung. create table. alter/ drop table Index ODL. Einleitung.

Einleitung create table Integritätsbed. alter/ drop table Index ODL. Einleitung. create table. alter/ drop table Index ODL. Einleitung. Thema dieser Vorlesung (im wesentlichen): Relationale Datenbanken zugrundeliegende Struktur sind Relationen. Es gibt auch andere Arten von Datenbanken, z. B. objektorientierte Datenbanken. Objekte anstelle

Mehr

2. Relationale Datenbanken

2. Relationale Datenbanken 2. Relationale Datenbanken Inhalt 2.1 Entity-Relationship-Modell 2.2 Relationales Modell 2.3 Relationale Entwurfstheorie 2.4 Relationale Algebra 2.5 Structured Query Language (SQL) 2 2.1 Entity-Relationship-Modell

Mehr

Datenintegrität. Bisherige Integritätsbedingungen

Datenintegrität. Bisherige Integritätsbedingungen Datenintegrität Integitätsbedingungen chlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Bedingungen an den Zustand der Datenbasis dynamische Bedingungen an Zustandsübergänge

Mehr

Vorlesung Dokumentation und Datenbanken Klausur

Vorlesung Dokumentation und Datenbanken Klausur Dr. Stefan Brass 5. Februar 2002 Institut für Informatik Universität Giessen Vorlesung Dokumentation und Datenbanken Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises

Mehr

Datenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung

Datenbankentwurf. 4.2 Logischer Entwurf. Kapitel 4. ER-Modell. Umsetzung. Entwurfsdokumentation. relationales Modell. Verbesserung 4.2 Logischer Entwurf Datenbankentwurf 4.2 Logischer Entwurf 2002 Prof. Dr. Rainer Manthey Informationssysteme Logischer Entwurf: Einordnung Entwurfsdokumentation logische Strukturen "auf dem Papier" konzeptueller

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

Kapitel 2: Das Relationale Modell

Kapitel 2: Das Relationale Modell Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Datenbanksysteme I Wintersemester 2012/2013 Kapitel 2: Das Relationale

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Objektrelationale Datenbanken

Objektrelationale Datenbanken Vorlesung Datenbanksysteme vom 26.11.2008 Objektrelationale Datenbanken Konzepte objektrelationaler DBs SQL:1999 OO vs. OR Konzepte objektrelationaler Datenbanken Große Objekte (LOBs: Large Objects) Mengenwertige

Mehr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale

Mehr

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1

Datenbankmodelle 1. Das Entity-Relationship-Modell. Prof. Dr. Bernhard Schiefer 2-1 Datenbankmodelle 1 Das Entity-Relationship-Modell Prof. Dr. Bernhard Schiefer 2-1 Datenbankmodelle ER-Modell hierarchisches Modell Netzwerkmodell relationales Modell objektorientierte Modelle Prof. Dr.

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

Informations- und Wissensmanagement

Informations- und Wissensmanagement Informations- und Wissensmanagement Kapitel 2: Datenbankdefinitionssprachen IPD, Forschungsbereich Systeme der Informationsverwaltung Datenbank-Technologie Vielfalt Thema dieser Vorlesung (im wesentlichen):

Mehr

Wirtschaftsinformatik 2. Tutorium im WS 11/12

Wirtschaftsinformatik 2. Tutorium im WS 11/12 Wirtschaftsinformatik 2. Tutorium im WS 11/12 Entity/Relationship-Modell SQL Statements Tutorium Wirtschaftsinformatik WS 11/12 2.1 Datenmodellierung mit ERM (1) Datenmodellierung zur Erarbeitung des konzeptionellen

Mehr

Grundlagen von Datenbanken SS 2010

Grundlagen von Datenbanken SS 2010 Grundlagen von Datenbanken SS 2010 2. Formalisierung des relationalen Datenmodells Agenda: Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Das Relationenmodell

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

3. Relationales Modell & Algebra

3. Relationales Modell & Algebra 3. Relationales Modell & Algebra Inhalt 3.1 Relationales Modell Wie können wir Daten mathematisch formal darstellen? 3.2 Übersetzung eines konzeptuellen Modells Wie können wir ein konzeptuelles Modell

Mehr

Konstante Relationen

Konstante Relationen Konstante Relationen values-syntax erzeugt konstante Relation values ( [, Konstante] * )[, ( [, Konstante] * )]* Beispiel values (1, eins ), (2, zwei ), (3, drei ); Resultat ist eine

Mehr

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

Mehr

ABTEILUNGS- ABTEILUNGS- LEITER NAME

ABTEILUNGS- ABTEILUNGS- LEITER NAME Übungsaufgaben Übungsaufgabe 1 - Normalisierung - Gegeben ist folgende unnormalisierte Relation, die Daten über Mitarbeiter und deren Abteilungszughörigkeit enthält. Weiterhin sind die Beteiligung(en)

Mehr

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer

Datenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational

Mehr

Informatik II Datenorganisation Datenbanken

Informatik II Datenorganisation Datenbanken Informatik II Datenorganisation Datenbanken Studiengang Wirtschaftsingenieurwesen (2. Semester) Prof. Dr. Sabine Kühn Tel. (0351) 462 2490 Fachbereich Informatik/Mathematik skuehn@informatik.htw-dresden.de

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel 4.14.3 Bedingungen über Werte 4.14.4 Statische Integrität Zu jeder Tabelle werden typischerweise ein Primärschlüssel und möglicherweise weitere Schlüssel festgelegt (UNIQUE-Klausel). In jeder Instanz zu

Mehr

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

Mai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese

Mehr

Webbasierte Informationssysteme 8. Datenbanksprache SQL

Webbasierte Informationssysteme 8. Datenbanksprache SQL Universität Paderborn Datenbanksprache SQL Webbasierte Informationssysteme 8. Datenbanksprache SQL Prof. Dr. Gregor Engels Alexander Förster AG Datenbank- und Informationssysteme 1 umfasst Sprachanteile

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Webbasierte Informationssysteme 8. Datenbanksprache SQL

Webbasierte Informationssysteme 8. Datenbanksprache SQL Universität Paderborn Webbasierte Informationssysteme 8. Datenbanksprache SQL Prof. Dr. Gregor Engels Alexander Förster AG Datenbank- und Informationssysteme 1 Kapitelübersicht Einführung in relationale

Mehr

Grundlagen von Datenbanksystemen

Grundlagen von Datenbanksystemen Ramez Elmasri Shamkant B. Navathe Grundlagen von Datenbanksystemen 3., überarbeitete Auflage ein Imprint der Pearson Education Deutschland GmbH Inhaltsverzeichnis Vorwort 9 Über die Autoren 13 Teil 1 Grundkonzepte

Mehr

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 8 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 12.01. 2004 Integritätsbedingungen

Mehr

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin)

Übungsblatt 4. Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin) Übungsblatt 4 Aufgabe 7: Datensicht Fachkonzept (Klausur SS 2002, 1. Termin) Die Saartal Linien beauftragen Sie mit dem Entwurf der Datenstrukturen für ein Informationssystem. Dieses soll zur Verwaltung

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger

Mehr