K5 Die Standardsprache SQL Flashcards

1
Q

Sprachentwicklung von SQL

A

SQL wurde „de facto“-Standard in der relationalen Welt (1986 von ANSI, 1987 von ISO akzeptiert)

Wesentliche Stufen der Weiterentwicklung des Standards

  • SQL2 (1992): rein relational
  • (SQL3) SQL:1999: objekt-relational
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Mächtigkeit von SQL

A

Auswahlvermögen umfasst das des Relationenkalküls und der Relationenalgebra: relational vollständig

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Aussprache von SQL

A

Englische Aussprache von SQL

  • SQL kann als Nachfolger von SEQUEL (Structured English Query Language) betrachtet werden und wird daher oft [ˈsiːkwəl] ausgesprochen
  • Speziell im Umfeld von:
    • Oracle
    • Mircosoft
  • Gemäß Standard wird es als [ɛskjuˈː ɛl] ausgesprochen
  • So auch im Umfeld von:
    • MySQL
    • PostgreSQL
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

SQL: abbildungsorientierte Sprache

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

SQL92-Syntax:

  • INSERT IN TO
  • DETLETE FROM
  • UPDATE
  • CREATE TABLE
  • CREATE VIEW
  • DROP TABLE
  • DROP VIEW
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

SQL92-Syntax

  • SELECT
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

SQL92-Syntax

  • condition
  • expr
  • predicate
  • comparison
  • arithm.op
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

SQL92-Syntax

  • from
  • function
  • set
  • attr-spec
  • attr-defn
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Anfragen: SELECT-Anweisung

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Anfragen: Untermengenbildung und Benennung von Ergebins-Spalten

Welche Dramen von Goethe wurden nach 1800 uraufgeführt?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Anfragen: Test auf Mengenzugehörigkeit

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Anfragen: Geschachtelte Abbildung

Welche Figuren kommen in Dramen von Schiller oder Goethe vor?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Anfragen: Symmetrische Abbildung und deren Vorteile

  • Finde die Figuren und ihre Autoren, die in Dramen von Schiller oder Goethe vorkommen.
  • Finde die Dichter (AUTOR, G-ORT), deren Dramen von Dichtern mit demselben Geburtsort (G-ORT) kritisiert wurden
  • Finde die Schauspieler (NAME, W-ORT), die bei in Weimar urauf geführten Dramen an ihrem Wohnort als ’Held’ mitgespielt haben.
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Anfragen: Auswertungs-/Erklärungsmodell

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Anfragen: Benutzer-spezifizierte Reihenfolge der Ausgabe

Finde die Schauspieler, die an einem Ort wohnen, an dem sie gespielt haben, sortiert nach Name (aufsteigend), W - Ort (absteigend).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Anfragen: Aggregatfunktionen

  • Bestimme das Durchschnittsgehalt der Schauspieler, die älter als 50 Jahre sind (GEHALT und ALTER seien Attribute von SCHAUSPIELER).
  • An wievielen (unterschiedlichen) Orten wurden Dramen uraufgeführt (U - Ort)?
  • Welches Drama wurde zuerst aufgeführt ?
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Anfragen: Partitionierung

  • Liste alle Abteilungen und das Durchschnittsgehalt ihrer Angestellten auf (Monatsgehalt).
  • Liste die Abteilungen zwischen K50 und K60 auf, bei denen das Durchschnittsalter ihrer Angestellten kleiner als 30 ist.
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Anfragen: Hierarchische Beziehungen auf einer Relation

Finde die Angestellten, die mehr als ihre (direkten) Manager verdienen (Ausgabe: NAME, GEHALT, NAME des Managers).

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Anfragen: Auswertung von SELECT-Anweisungen – Erklärungsmodell

A
  • Die auszuwertenden Relationen werden durch die FROM-Klausel bestimmt. Alias-Namen erlauben die mehrfache Verwendung derselben Relation.
  • Das Kartesische Produkt aller Relationen der FROM-Klausel wird gebildet.
  • Tupeln werden ausgewählt durch die WHERE-Klausel.
  • Qualifizierte Tupeln werden gemäß der GROUP-BY-Klausel in Gruppen eingeteilt.
  • Gruppen werden ausgewählt, wenn sie die HAVING-Klausel erfüllen. Prädikat in der HAVING-Klausel darf sich nur auf Gruppeneigenschaften beziehen (Attribute der GROUP-BY-Klausel oder Anwendung von Aggregat-Funktionen).
  • Die Ausgabe wird durch die Auswertung der SELECT-Klausel abgeleitet. Wurde eine GROUP-BY-Klausel spezifiziert, dürfen als SELECT-Elemente nur Ausdrücke aufgeführt werden, die für die gesamte Gruppe genau einen Wert ergeben (Attribute der GROUP-BY-Klausel oder Anwendung von AggregatFunktionen).
  • Die Ausgabereihenfolge wird gemäß der ORDER-BY-Klausel hergestellt. Wurde keine ORDER-BY-Klausel angegeben, ist die Ausgabereihenfolge systembestimmt (indeterministisch).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Anfragen: Erklärungsmodell – Die Summe der Gehälter pro Abteilung, in der mindestens ein Mitarbeiter 40 Jahre oder älter ist, soll berechnet werden:

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Anfragen: Suchbedingungen, (Nicht-)quantifizierte Prädikate

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Anfragen: IN-Prädikate

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Anfragen: Ähnlichkeitssuche

A

Unterstützung der Suche nach Objekten, von denen nur Teile des Inhalts bekannt sind oder die einem vorgegebenen Suchkriterium möglichst nahe kommen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Anfragen: Quantifizierung

  • Finde die Manager, die mehr verdienen als alle ihre direkten Untergebenen
  • Finde die Namen der Schauspieler, die mindestens einmal gespielt haben (… nie gespielt haben)
  • Finde die Namen aller Schauspieler, die alle Rollen gespielt haben
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Anfragen: Prädikate über Nullwerten

A

Attributspezifikation: Es kann für jedes Attribut festgelegt werden, ob NULL-Werte zugelassen sind oder nicht

Verschiedene Bedeutungen von Nullwerten:

  • Datenwert ist momentan nicht bekannt
  • Attributwert existiert nicht für ein Tupel
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Anfragen: Häufige genutzte Alternativen zu Nullwerten

A

Häufige genutzte Alternativen zu Nullwerten

  • Defaultwerte (Risiko: Eingabe eines falschen Wertes)
  • Leere Zeichenkette, „None“, „Unbekannt“ oder spezielle Symbole wie „-“ oder „#“ bei Stringwerten
  • „- 1“ bei Attributen mit positiven Zahlen wie z.B. Alter, Gehalt
  • Untypische Werte wie „01.01.0000“ bei Datumsangaben

Generelle Aspekte:

  • Welche Auswirkungen haben solche Alternativwerte auf Wertvergleiche, Aggregationen oder Statistikanalysen?
  • Inkonsequente Nutzung führt zu Inkonsistenzen (Konsequente Nutzung kann aber nur begrenzt vom System kontrolliert werden)
  • Bis auf Defaultwerte nicht auf Fremdschlüsselattribute anwendbar
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Anfragen: Alternative Modellierung von optionalen Eigenschaften

A

Verwendung eines zusätzlichen Boolschen Attributes pro optionaler Eigenschaft

  • Belegung mit 1 wenn Eigenschaft existiert
  • Belegung mit 0 wenn Eigenschaft nicht existiert
  • Belegung mit Nullwert falls Existenz der Eigenschaft unbekannt ist Anm.: In den beiden letzten Fällen beinhaltet das eigentl. Attribut auch einen Nullwert
  • Vorteil: Löst Konflikt zwischen den Nullwertsemantiken „unbekannt“ und „nicht existent“
  • Nachteil: Erhöht Komplexität von Schema und Anfragen sowie den Speicherbedarf
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Anfragen: Weiteres zu Nullwerten

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Anfragen: Vermeintliche Anfrageäquivalenzen

  • Finde alle Abteilungen deren Leiter nicht mehr als 50k verdient
  • Finde die Person mit dem maximalen Gehalt.
  • Finde alle Personen aus Abteilung K56 die mehr als 40k verdienen.
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Anfragen: Vermeintliche Tautologien

  • Finde alle Personen die weniger, gleich oder mehr als 40k verdienen.
  • Finde alle Personen die entweder in Abteilung K45 oder nicht in Abteilung K45 arbeiten
31
Q

SQL Fiddle

32
Q

Datenmanipulation: Einfügen von Tupeln

  • Füge den Schauspieler Garfield mit der PNR 4711 ein
  • Füge die Schauspieler aus HH in die Relation TEMP ein
33
Q

Datenmanipulation: Löschen von Tupeln mit Hilfe von Suchklauseln

  • Lösche den Schauspieler mit der PNR 4711.
  • Lösche alle Schauspieler, die nie gespielt haben.
34
Q

Datenmanipulation: Ändern von Tupeln mit Hilfe von Suchklauseln

35
Q

Datenmanipulation: Um mengenbasierte Änderungen in MySQL auszuführen, muss ‚Safe Updates‘ deaktiviert werden

36
Q

Datendefinition: Ziel der SQL-Normierung

A
  • möglichst große Unabhängigkeit der DB-Anwendungen von speziellen DBS
  • einheitliche Sprachschnittstelle genügt nicht!
  • Beschreibung der gespeicherten Daten und ihrer Eigenschaften nach einheitlichen und verbindlichen Richtlinien ist genauso wichtig
37
Q

Datendefinition: Definitionsschema

38
Q

Datendefinition: Definition von Schemata

39
Q

Datendefinition: Datentypen

40
Q

Datendefinition: Definition von Domains

41
Q

Datendefinition: Definition von Attributen

42
Q

Datendefinition: Erzeugung von Basisrelationen

43
Q

Beziehungen: (1:n)-Beziehung

44
Q

Beziehungen: (1:1)-Beziehung

45
Q

Beziehungen: Symmetrische (1:1)-Beziehung

46
Q

Beziehungen: (n:m)-Beziehung

47
Q

Beziehungen: Reflexive (1:n)-Beziehung

A
  • Mit Hilfe dieser Lösung kann die Personal-Hierarchie eines Unternehmens dargestellt werden; die referentielle Beziehung stellt hier eine partielle Funktion dar, da die „obersten“ Manager einer Hierarchie keinen Manager haben
  • MNR … NOT NULL lässt sich nur realisieren, wenn die „obersten“ Manager als ihre eigenen Manager interpretiert werden; dadurch treten jedoch Referenzzyklen auf, was die Frageauswertung und die Konsistenzprüfung erschwert
  • Welche Beziehungsstruktur erzeugt MNR … UNIQUE NOT NULL?
48
Q

Abbildung von Beziehungen - Zusammenfassung

A
  • Relationenmodell ‚hat‘ wertbasierte Beziehungen (im Gegensatz hierzu haben objektorientierte Datenmodelle referenzbasierte Beziehungen)
  • Fremdschlüssel (FS) und zugehöriger Primärschlüssel/Schlüsselkandidat (PS/SK) repräsentieren eine Beziehung (gleiche Wertebereiche!)
  • Alle Beziehungen (FS ↔ PS/SK) sind binär und symmetrisch
  • Auflösung einer Beziehung geschieht durch Suche
  • Es sind i. allg. k (1:n)-Beziehungen zwischen zwei Relationen möglich
49
Q

Datendefinition: Beispiel

Illustriere DB-Schema

50
Q

Datendefinition: Beispiel

Definiere Wertebereiche

51
Q

Datendefinition: Beispiel

Definiere Relationen

52
Q

Wartung von Beziehungen: Relationale Invarianten / referentielle Integrität

A
  • Primärschlüsselbedingung: Eindeutigkeit, keine Nullwerte!
  • Fremdschlüsselbedingung: Zugehöriger PS (SK) muss existieren
53
Q

Wartung von Beziehungen: Potentielle Gefährdung

A

Operationen in der Sohn-Relation

  • Einfügen eines Sohn-Tupels
  • Ändern des FS in einem Sohn-Tupel
  • Löschen eines Sohn-Tupels
  • Welche Maßnahmen sind erforderlich?
    • Beim Einfügen erfolgt eine Prüfung, ob in einem Vater-Tupel ein PS/SK-Wert gleich dem FS-Wert des einzufügenden Tupels existiert
    • Beim Ändern eines FS-Wertes erfolgt eine analoge Prüfung
    • Löschen erfordert keine Maßnahme

Operationen in der Vater-Relation

  • Löschen eines Vater-Tupels
  • Ändern des PS/SK in einem Vater-Tupel
  • Einfügen eines Vater-Tupels (unproblematisch)
  • Welche Reaktion ist wann möglich/sinnvoll?
    • Verbiete Operation
    • Lösche/ändere rekursiv Tupel mit zugehörigen FS-Werten
    • Falls Sohn-Tupel erhalten bleiben soll (nicht immer möglich, z.B. bei Existenzabhängigkeit), setze FS-Wert zu NULL oder Default

Wie geht man mit NULL-Werten um? (Wdh.)

  • Spezielle Semantiken von NULL-Werten
  • Dreiwertige Logik verwirrend: T, F, ?
  • Setzung: NULL ≠ NULL (z. B. beim Verbund)
  • bei Operationen: Ignorieren von NULL-Werten
54
Q

Wartung von Beziehungen: Referentielle Aktionen

55
Q

Wartung von Beziehungen: Diskussion der Auswirkungen referentieller Aktionen am Beispiel

A

FOLIEN 102-109

56
Q

Wartung von Beziehungen: Maßnahmen zur Verhinderung von Reihenfolgeabhängigkeiten

A

Statische Schemaanalyse zur Feststellung sicherer DB-Schemata

  • nur bei einfach strukturierten Schemata effektiv
  • hohe Komplexität der Analysealgorithmen
  • bei wertabhängigen Konflikten zu restriktiv (konfliktträchtige Schemata)

Dynamische Überwachung der Modifikationsoperationen

  • durchspielen aller Ausführungsreihenfolgen (können weit mehr als 2 sein!)
  • hoher Laufzeitaufwand
  • häufig unnötig, da Reihenfolgeabhängigkeiten eher selten auftreten

Vorgehensweisen:

  1. Falls Sicherheit eines Schemas festgestellt werden kann, ist keine Laufzeitüberwachung erforderlich
  2. Alternative Möglichkeiten zur Behandlung konfliktträchtiger Schemata, nach dem die statische Schemaanalyse die Sicherheit des Schemas nicht feststellen konnte
  • sie werden verboten, oder
  • sie werden erlaubt und
    • die referentiellen Aktionen werden bei jeder Operation dynamisch überwacht
    • falls ein Konflikt erkannt wird, wird die Operation zurückgesetzt
57
Q

Wartung von Beziehungen: Durchführung der referentiellen Aktionen

58
Q

Wartung von Beziehungen: Zyklische Referenzpfade

59
Q

Schemaevolution

A

Wachsender oder sich ändernder Informationsbedarf

  • Erzeugen/Löschen von Tabellen (und Sichten)
  • Hinzufügen, Ändern und Löschen von Spalten
  • Anlegen/Ändern von referentiellen Beziehungen
  • Hinzufügen, Modifikation, Wegfall von Integritätsbedingungen

Hoher Grad an logischer Datenunabhängigkeit ist sehr wichtig!

Zusätzliche Änderungen im DB-Schema durch veränderte Anforderungen bei der DB-Nutzung

  • Dynamisches Anlegen von Zugriffspfaden
  • Aktualisierung der Zugriffskontrollbedingungen
60
Q

Sichten

A

Ziel: Festlegung

  • welche Daten Benutzer wie sehen wollen (Vereinfachung, leichtere Benutzung)
  • welche Daten sie nicht sehen dürfen (Datenschutz)
  • einer zusätzlichen Abbildung (erhöhte Datenunabhängigkeit)

Sicht (View)

  • mit Namen bezeichnete, aus Tabellen abgeleitete, virtuelle Tabelle (Anfrage)

Korrespondenz zum externen Schema bei ANSI/SPARC (Benutzer sieht jedoch i. allg. mehrere Sichten (Views) und Tabellen)

61
Q

Sichten: Eigenschaften von Sichten

A
  • Sicht kann wie eine Tabelle behandelt werden
  • Sichtsemantik: „dynamisches Fenster“ auf zugrundeliegende Tabellen
  • Sichten auf Sichten sind möglich
  • eingeschränkte Änderungen: aktualisierbare und nicht-aktualisierbare Sichten
62
Q

Sichten: Sichtbarkeit von Änderungen

63
Q

Sichten: Abbildung von Sicht-Operationen auf Tabellen (Query Unfolding)

A

Sichten werden i. allg. nicht explizit und permanent gespeichert, sondern SichtOperationen werden in äquivalente Operationen auf Tabellen umgesetzt

Vorgehen: Sichtname wird durch seine Definition (d.h. eine Anfrage) ersetzt

64
Q

Sichten: Löschen von Sichten

65
Q

Sichten: Änderbarkeit von Sichten

66
Q

Sichten: WITH CHECK OPTION

A
  • Einfügungen und Änderungen müssen das die Sicht definierende Prädikat (WHERE-Klausel der zugehörigen CREATE-VIEW-Anweisung) erfüllen, sonst Zurückweisung
  • nur auf änderbaren Sichten definierbar

Spezifikationsmöglichkeiten

  • Weglassen der CHECK-Option
  • WITH CASCADED CHECK OPTION oder äquivalent WITH CHECK OPTION
  • WITH LOCAL CHECK OPTION

Annahmen

  • Sicht SA mit dem die Sicht definierenden Prädikat VA wird aktualisiert
  • SI ist die höchste Sicht im Abstammungspfad von SA, die die Option CASCADED besitzt
  • Oberhalb von SI tritt keine LOCAL-Bedingung auf

Aktualisierung von SA

  • als Prüfbedingung wird von SI aus an SA “vererbt”: V = VI ⋀ VI-1 ⋀ . . . ⋀ V1
  • erscheint irgendeine aktualisierte Zeile von SA nicht in SI, so wird die Operation zurückgesetzt
  • Es ist möglich, dass Zeilen aufgrund von gültigen Einfüge- oder Änderungsoperationen aus SA verschwinden

Aktualisierte Sicht besitzt WITH CHECK OPTION

  • Default ist CASCADED
  • Als Prüfbedingung bei Aktualisierungen ergibt sich V = VA ⋀ VN ⋀ . . . ⋀ VI ⋀ . . . ⋀ V1
  • Zeilen können jetzt aufgrund von gültigen Einfüge- oder Änderungsoperationen nicht aus SA verschwinden

LOCAL hat eine undurchsichtige Semantik

  • wird hier nicht diskutiert
  • Empfehlung: nur Verwendung von CASCADED
67
Q

Indexierung: Einsatz von Indexstrukturen

A
  • Beschleunigung der Suche: Zugriff über Spalten (Schlüsselattribute)
  • Kontrolle von Integritätsbedingungen (relationale Invarianten)
  • Zeilenzugriff in der logischen Ordnung der Schlüsselwerte
  • Gewährleistung der Clustereigenschaft für Tabellen
  • Aber auch: erhöhter Aktualisierungsaufwand und Speicherplatzbedarf
68
Q

Indexierung: Einrichtung von Indexstrukturen

A
  • Phys. Datenunabhängigkeit des Relationenmodells erlaubt ein Hinzufügen und Löschen
  • jederzeit möglich, um z. B. bei veränderten Benutzerprofilen das Leistungsverhalten zu optimieren
  • “beliebig” viele Indexstrukturen pro Tabelle und mit unterschiedlichen Spaltenkombinationen als Schlüssel möglich
  • Steuerung der Eindeutigkeit der Schlüsselwerte und der Clusterbildung
  • Freiplatzanteil (PCTFREE) in jeder Indexseite beim Anlegen erleichtert das Wachstum
  • Spezifikation: DBA oder Benutzer
69
Q

Indexierung: Index mit und ohne Clusterbildung

70
Q

Indexierung: Beispiele

  • Erzeugung einer Indexstruktur mit Clusterbildung auf der Spalte Anr von Abt
  • Erzeugung einer Indexstruktur auf den Spalten Anr (absteigend) und Gehalt (aufsteigend) von Pers.
71
Q

Indexierung: Typische Implementierung eines Index: B*-Baum

A

(wird von meisten DBVS angeboten!)

  • dynamische Reorganisation durch Aufteilen (Split) und Mischen von Seiten
  • Wesentliche Funktionen
    • direkter Schlüsselzugriff auf einen indexierten Satz
    • sortiert sequentieller Zugriff auf alle Sätze (unterstützt Bereichsanfragen, Verbundoperation usw.)
  • Balancierte Struktur
    • unabhängig von Schlüsselmenge
    • unabhängig von Einfügereihenfolge
72
Q

Zusammenfassung: SQL-Anfragen, (Mengenorientierte Datenmanipulantion), Datendefinition

A

SQL-Anfragen

  • Mengenorientierte Spezifikation, verschiedene Typen von Anfragen
  • Vielfalt an Suchprädikaten
  • Auswahlmächtigkeit von SQL ist höher als die der Relationenalgebra
  • Erklärungsmodell für die Anfrageauswertung: Festlegung der Semantik von Anfragen mit Hilfe von Grundoperationen
  • Optimierung der Anfrageauswertung durch das DBS

Mengenorientierte Datenmanipulation

Datendefinition

  • CHECK-Bedingungen für Wertebereiche, Attribute und Relationen
  • Spezifikation des Überprüfungszeitpunktes
73
Q

Zusammenfassung: Kontrolle von Beziehungen, Wartung der referentiellen Integrität

A

Kontrolle von Beziehungen

  • SQL erlaubt nur die Spezifikation von binären Beziehungen.
  • Referentielle Integrität von FS –> PS/SK wird stets gewährleistet.
  • Rolle von PRIMARY KEY, UNIQUE, NOT NULL
  • Es ist nur eine eingeschränkte Nachbildung von Kardinalitätsrestriktionen möglich; insbesondere kann nicht spezifiziert werden, dass „ein Vater Söhne haben muss“.

Wartung der referentiellen Integrität

  • SQL2/3 bietet reichhaltige Optionen für referentielle Aktionen
  • Es sind stets sichere Schemata anzustreben
  • Falls eine statische Schemaanalyse zu restriktiv für die Zulässigkeit eines Schemas ist, muss für das gewünschte Schema eine Laufzeitüberwachung der referentiellen Aktionen erfolgen.
74
Q

Zusammenfassung: Schemaevolution, Sichtenkonzept, Indexstrukturen als B*-Bäume

A

Schemaevolution

  • Änderung/Erweiterung von Spalten, Tabellen, Integritätsbedingungen, …

Sichtenkonzept

  • Erhöhung der Benutzerfreundlichkeit
  • Flexibler Datenschutz
  • Erhöhte Datenunabhängigkeit
  • Rekursive Anwendbarkeit
  • Eingeschränkte Aktualisierungsmöglichkeiten

Indexstrukturen als B*-Bäume

  • direkter Schlüsselzugriff auf einen indexierten Satz
  • sortiert sequentieller Zugriff auf alle Sätze (unterstützt Bereichsanfragen, Verbundoperation usw.)