PowerPoint-Präsentation

Werbung
SQL::Geschichte/Normen (Übersicht)
SEQUEL (Structured English Query Language) 74 [IBM]
SEQUEL2 76
SQL 86 [ANSI]
SQL 89 [ISO]
SQL2 92 [ISO/ANSI]
SQL3 (SQL::99) 99
SQLx (SQL::2003) 03
< 100 Seiten
> 600 Seiten
> 1100 Seiten
?
SQL::Normen SQL 86
•
•
nur Grundoperationen; nicht z.B. ALTER TABLE
keine Primärschlüssel-Eigenschaft; Work-Around:
CREATE TABLE Kunde
(Nr DECIMAL (5,0) NOT NULL,
…
garantiert, dass alle Werte
);
des Attributs Nr ungleich
Null sind.
CREATE UNIQUE INDEX KundIdx ON Kunde (Nr);
garantiert, dass alle Werte des Attributs Nr
verschieden sind.
SQL::Normen SQL 89
Zusätzlich (zu SQL-86):
• Integritätskontrollen
• CHECK-Option (=Wertebereich für Attribute)
kein Typkonzept, da Attribute einzeln zu definieren sind!
• DEFAULT-Option
CREATE TABLE Kunde
(Nr SMALLINT DEFAULT 0,
• Entity-Integrität
CREATE TABLE Kunde
(…
PRIMARY KEY (Nr));
Keine Pflicht zur Vergabe eines Primärschlüssels!
SQL::Normen SQL 89 (Forts.)
•
•
Referentielle Integrität
CREATE TABLE Auftrag
(…
Kunde SMALLINT,
…
FOREIGN KEY (Kunde) REFERENCES Kunde);
Embedded SQL (Einbettung von SQL in 3GL: Ada, C, COBOL,
FORTRAN, Pascal, PL/I)
• Datentypenabbildung
• Cursor
SQL::Normen SQL2
Ziel: Alle herstellerspezifischen Erweiterungen wieder
„einzufangen“ -> „Conformance Levels“ (-> Hersteller kann
schrittweise SQL-konform werden)
1. Entry SQL (ähnlicher Umfang wie SQL-86)
2. Intermediate SQL (100 funktionale Erweiterungen)
3. Full SQL (weitere 76 funktionale Erweiterungen)
• Zusätzliche Datentypen (BIT, DATETIME,…)
• Domänen (benannte Wertebereiche)
• Temporäre Tabellen
• SQL-Cursor
• Dynamisches SQL
• …
SQL::Normen SQL3 (SQL::99)
•
•
Objektrelationale Erweiterungen
• Neue Datentypen: BLOB, CLOB
• Typkonstruktoren: ROW, ARRAY, REF
• Benutzerdefinierte Ordnungen für benutzerdefinierte Typen
• Typisierte Tabellen mit Subtabellenbildung
• Typisierte Sichten mit Subsichtenbildung
Sonstige Erweiterungen
• Benutzerdefinierte Routinen (auch als Trigger)
• Rekursive Anfragen
• OLAP-Anfragekonstrukte
• Rollenkonzept zur Zugriffskontrolle
• Scrollable/updatable Cursors
• Multimedia-Erweiterungen
SQL::Normen SQLx (SQL::2003)
•
Erweiterungen des Datenmodells
• Generierte Spalten (von anderen Spaltenwerten abgeleitet)
• Sequenzgeneratoren zum inkrementellen Erzeugen von
Werten
• Identitätsspalten zur automatischen Generierung künstlicher
Schlüsselwerte
• Tabellenwertige Funktionen
• XML-Anbindung
Quelle: Can Türker: SQL:1999 & SQL:2003. dpunkt.verlag2003
Herunterladen