From af93ea78bc501d46fa2b0fc883db6dbb464ce4c3 Mon Sep 17 00:00:00 2001 From: Andreas Zweili Date: Fri, 5 Jan 2018 21:28:16 +0100 Subject: [PATCH] add more solutions --- db/4_sem/2018-01-05_oracle/ordbms.sql | 35 +++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/db/4_sem/2018-01-05_oracle/ordbms.sql b/db/4_sem/2018-01-05_oracle/ordbms.sql index b418db0..581ebcd 100644 --- a/db/4_sem/2018-01-05_oracle/ordbms.sql +++ b/db/4_sem/2018-01-05_oracle/ordbms.sql @@ -1,3 +1,5 @@ +-- Aufgabe 1.1 - 1.4 + drop type personal_t; drop type adresse_t; @@ -31,3 +33,36 @@ insert into personal_o values ( insert into personal_o values ( personal_t('Cadaroski', 'Ismail', to_date('1997-12-01', 'YYYY-MM-DD'), 1100.00, 4, adresse_t('musterstrasse', 2, 4700, 'Bern'))); + +select p.NACHNAME, p.vorname, p.GEBURTSDATUM, p.gehalt, p.kinder, p.adresse.strasse, p.adresse.hausnr, p.adresse.plz, p.adresse.ort from personal_o p + where p.gehalt > 1100.00; +-- Aufgabe 1.1 - 1.4 + + + +-- Aufgabe 2.1 +create or replace type abteilung_t as object + (abt_it varchar2(2), + bezeichnung varchar2(40), + adresse adresse_t); + +CREATE TABLE abteilung_o OF abteilung_t +OBJECT IDENTIFIER IS SYSTEM GENERATED; + +-- Aufgabe 2.2 +create or replace type angestellter_t as object + (nachname varchar2(20), + vorname varchar2(20), + abteilung ref abteilung_t); + +CREATE TABLE angestellter_o OF angestellter_t +OBJECT IDENTIFIER IS SYSTEM GENERATED; + +-- Aufgabe 2.3 + +insert into abteilung_o +values( + abteilung_t(20, 'finanzen', adresse_t('musterstrasse', 2, 4700, 'Bern'))); + +insert into ANGESTELLTER_O + select angestellter_