2015-12-14 25 views
-1
create type adrtype AS OBJECT 
(
    rue varchar2(30), 
    vile varchar2(10) 

); 

create type t_logiciel; 

create type t_pc; 

create type t_instatype as OBJECT 
    (
    dateint date, 
    poste ref t_pc 
); 

create or replace type t_pc as OBJECT 
    (
     Nserie number , 
     adrIP number, 
     CPU varchar(20) 
    ); 

create type t_instatypes as table of t_instatype 

create or replace type t_logiciel as OBJECT 
    (
     nomLog varchar2(30), 
     version number, 
     editeur varchar2(20), 
     instalation t_instatypes 
    ); 

create type t_logiciels as table of REF t_logiciel; 

create table logiciel of t_logiciel nested table instalation Store as tab_ins; 


create table departement 
    (
    codeDept number is primary key, 
    nomDept varchar2(20), 
    budget varchar2(20), 
    adress adrtype, 
    logiciels t_logiciels 
) nested table logiciels Store as tab_log; 

create table pc of t_pc; 

-- insertion dans la table logiciel 
insert into logiciel 
    values ('unity', 123, 'adobe', t_instatypes (t_instatype ('01/01/2005' , (select ref(p) from pc p where Nserie=123)))); 

-- insertion en departement 
insert into departement 
    values (3, 'INFO', 'jh', adrtype('saada','fes'), t_logiciels((select ref(l) from logiciel l where version=123))); 

-- insert autre element logiciel dans le departement 
insert into the (select logiciels from departement where codedept=3) 
    values ((select ref(l) from logiciel l where version=127)); 

濟veuxsélectionner萊valeur魁SONT DES引用德colomn(logiciels)丹斯的La Table DEPARTEMENT評論selectionner UNE表去參考

+0

歡迎的StackOverflow !請注意,這是一個講英語的網站 - 請將您的問題翻譯成英文。 – Mureinik

+0

@collapsar:[我如何處理非英文內容?](http://meta.stackoverflow.com/questions/297673/how-do-i-deal-with-non-english-content):* __請不要翻譯OP的帖子.__他們需要能夠迴應反饋,如果他們本人無法翻譯帖子,我們無法確定他們能夠理解提供的任何反饋(通過評論,答案或幫助中心內容)。 * – sstan

+0

@sstan哎呀,有人沒有給予足夠的重視,常見問題...對不起,thansks的提示。我會回滾到原來的版本。 – collapsar

回答

1

下面應該返回請求的數據:

select d.codeDept, 
    d.ADRESS, 
    l.column_value.nomLog, 
    l.column_value.version 
from 
departement d , table (d.logiciels) l