Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Community > Tech
 
[ORACLE & BDII] errore ref()
Clicca QUI per vedere il messaggio nel forum
2003
Dati questi script di crezione :
code:
-- tipo orario CREATE OR REPLACE TYPE t_orario AS OBJECT ( TitoloMostra VARCHAR(40), Giorno VARCHAR(15), OraApertura NUMBER(5), OraChiusura NUMBER(5) ) / CREATE OR REPLACE TYPE Set_orario AS TABLE OF REF t_orario / CREATE TABLE R_Museo ( Indirizzo VARCHAR(40) PRIMARY KEY, Telefono NUMBER(20), Piano Set_piano, Orario Set_orario ) NESTED TABLE Piano STORE AS tab_piani NESTED TABLE Orario STORE AS tab_orari / -- tabella tipata orario CREATE TABLE R_Orari OF t_orario ( PRIMARY KEY(TitoloMostra,Giorno) ) /


e l'inserimento:
code:
insert into R_Museo values ('Firenze via della Ninna 5','0552388651',Set_piano(),Set_orario()); insert into R_Orari values ('Museo','Martedi','0815','1900'); insert into TABLE(select orario from R_Museo where indirizzo='Firenze via della Ninna 5') select ref(o) from R_Orari o where o.TitoloMostra = 'Museo';


noi volevamo accedere ai campi di orario attravesto la tabella mostra attravesto la query :

code:
select orario.giorno from r_mostra

ma restituisce
code:
select orario.giorno from r_museo * ERRORE alla riga 1: ORA-00904: "ORARIO"."GIORNO": identificativo non valido


e provando questa query:
code:
select orario from r_museo;


restituisce :
code:
SET_ORARIO(0000220208F3197F8638CF46369228A3A0E927E AA0BF9E2AFE26A94DCB 2C832)


che dovrebbe essere l'indirizzo di riferimento alla tabella orario, quindi mettendo il ref(orario) sulla select ...
code:
select ref(orario) from r_museo;


dovrebbe andare ma invce...

code:
select ref(orario) from r_museo * ERRORE alla riga 1: ORA-00904: "ORARIO": identificativo non valido


qualcuno sa aiutarci??

GinoPilotino
basi 2...noi l'abbiamo dato ieri.
immagino che questo sia il progetto dei musei/mostre ecc.
spero di ricordarmi ancora qualcosa per risponderti :D

prova così:

select value(r).titolomostra as Titolo_Mostra
from r_museo m, table(m.orario) r
where m.indirizzo='Firenze via della Ninna 5';

dovrebbe funzicare a dovere.

gino.

2003
si siamo riusciti facendo migliaia di tentativi a arrivare alla soluzione (ieri il wifi in dipartimento nn andava e l'ho letto solo ora :oops: )..

è corretta la tua query grazie cmq!!!

p.s. si è quello del museo/mostre :-D

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate