----------------------------------------------------------------------------- -- - -- Copyright (C) 2001 by Stephan Uhlmann, Jan Becker - -- - -- This program is free software; you can redistribute it and/or modify - -- it under the terms of the GNU General Public License as published by - -- the Free Software Foundation; either version 2 of the License, or - -- (at your option) any later version. - -- - ----------------------------------------------------------------------------- -- der Object-Typ Address CREATE TYPE Address AS OBJECT ( strasse VARCHAR2(50), stadt VARCHAR2(15), plz VARCHAR(5) ) / -- der Object-Typ Person CREATE TYPE Person AS OBJECT ( vorname VARCHAR2(15), nachname VARCHAR2(15), geburtsdatum DATE, adresse Address, telefon VARCHAR2(15) ) / -- eine Tabelle mit Objekten vom Typ Person anlegen CREATE TABLE persons OF Person; -- PL/SQL here DECLARE a Address := Address('','',''); -- ein Objekt vom Typ Address, gleich initialisieren d DATE := '01-JAN-01'; -- ein Datum BEGIN -- die Attribute im Objekt belegen a.strasse := 'MyStreet'; a.stadt := 'MyTown'; a.plz := '12345'; -- Datensatz einfuegen INSERT INTO persons VALUES ('Stephan', 'Uhlmann', d, a,'12345'); END; / -- Tabelle Anzeigen SELECT * FROM persons; -- Aufraeumen DROP TABLE persons; DROP TYPE Person; DROP TYPE Address;