6.5.2 SQL-92 Erweiterungen bei Verbunden:
SELECT * FROM liefert, Artikel;
oder
SELECT * FROM liefert CROSS JOIN Artikel;
oder
SELECT * FROM Artikel JOIN enthaelt
ON Artikel.Artnr = enthaelt.Artnr;
oder
SELECT * FROM Artikel JOIN enthaelt
USING (Artnr);
oder
SELECT * FROM Artikel NATURAL JOIN enthaelt;
SQL-92
6.5.3 SQL3
SQL3 Beispiel:
CREATE OBJECT TYPE Person_adt
WITH OID NOT VISIBLE
(
PUBLIC Ausweisnr INTEGER PRIMARY KEY
PUBLIC Name VARCHAR2(30)
PRIVATE Gebdatum DATE
PUBLIC Alter INTEGER VIRTUAL
GET WITH Ermittle_Alter CHECK(VALUE.Alter > 0)
PUBLIC Vater Person_adt
PUBLIC ACTOR FUNCTION Ermittle_Alter (:p Person_adt)
RETURNS INTEGER;
RETURN (CURRENT_DATE - :p.Gebdatum)
PUBLIC ACTOR FUNKTION Einkommen (:p Person_adt)
RETURNS INTEGER;
RETURN 0
.....
);
CREATE OBJECT TYPE Student_adt
WITH OID NOT VISIBLE UNDER Person_adt
(
PUBLIC Matrnr INTEGER
PUBLIC Fach VARCHAR2(30)
PUBLIC Bafoeg INTEGER
PUBLIC ACTOR FUNKTION Einkommen (:p Student_adt)
RETURNS INTEGER;
RETURN :p.Bafoeg
);
CREATE TABLE Personen (
Person Person_adt INSTANCE
);
INSERT INTO Personen( Matrnr(Person), Name(Person), Gebdatum(Person))
VALUES Person_adt(007,'James Bond', 05-Feb-45);