Oracle Lessons

Lezioni Pratiche in Italiano

Creato da Pietro_Bonfigli il 11/03/2009

Area personale

 

Tag

 

Archivio messaggi

 
 << Luglio 2024 >> 
 
LuMaMeGiVeSaDo
 
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
 
 

Cerca in questo Blog

  Trova
 

FACEBOOK

 
 

Ultime visite al Blog

marcop1973pixfaxhellingen666RiukaTerzo_Blog.GiusFDMDMFqwerty_alnicola.cambaraFilippoPaganellifrancocapoluanadiciommoaleale78alebherryraffaelesoldanoio_brina
 

Chi puņ scrivere sul blog

Solo l'autore puņ pubblicare messaggi in questo Blog e tutti gli utenti registrati possono pubblicare commenti.
 
RSS (Really simple syndication) Feed Atom
 
 

 

« Oracle Tabelle Esterne AppendiceOracle Tipi Dati Astratt... »

Oracle Tipi Dati Astratti Lezione 1

Post n°27 pubblicato il 12 Agosto 2010 da Pietro_Bonfigli
 

In questo documento vedremo come utilizzare i tipi di dato astratti. Verranno trattati temi di amministrazione, di sicurezza e indicizzazione dei tipi di dato astratti, e dei loro attributi. Verrà descritta anche la creazione di metodi e l’impiego di viste e trigger di tipo ISTEAD OF.

 

Importante.

 Quando è necessario utilizzare i tipi di dati astratti:

 Quando sorge la necessità di modellare e gestire dati la cui struttura e le cui interrelazioni non sono riconducibili direttamente alle strutture tabellari del modello relazionale.

 

  • Nel modello relazionale la modellazione di un oggetto complesso implica una sua suddivisione in un ampio insieme di tuple e la necessità di eseguire un gran numero di join quando si ha la necessità di ricostruirlo. Ad esempio un aeroplano è formato da un gran numero di componenti di base (ali, fusoliera, timone, motori, ecc...) i quali a loro volta sono costruiti a partire da componenti più elementari (tralici, fibre plastiche, parti metalliche) e così via. La modellazione di tali entità con un insieme di tuple rende necessario eseguire un gran numero di join ogni volta che si desidera reperire tutte le informazioni relative a un intero aeroplano.

  • Necessità di esprimere proprietà e relazioni dinamiche dei dati e di gestirne l'evoluzione temporale. Si pensi alle difficoltà che si incontrano con il modello E/R e conseguentemente con quello relazionale nella modellazione del tempo e dell'evoluzione dinamica delle entità.

 

Di contro attualmente:

  • Mancanza di un modello dei dati e di un linguaggio di query standard pienamente accettati;

  • Mancanza di un linguaggio di query dichiarativo (SQL-like); 

Il modello relazionale ad oggetti

I DBMS relazionali ad oggetti (object-relational) nascono dall’esigenza di assicurare le funzionalità dei RDBMS rispetto alla gestione di dati tradizionali, estendendo il modello dei dati con la possibilità di gestire dati complessi, tipica degli OODBMS.

 

ORDBMS: caratteristiche generali: 

Vanno incontro alle esigenze attuali di gestire nuovi tipi di dato quali:

  • testi, immagini, audio/video, dati geografici, ecc.;

  • tipi di dato user-defined;

  • tipi collezione;

Metodi per modellare le operazioni sui tipi definiti dall'utente (es. Java, C).

Nuovi modi per modellare le associazioni.

La filosofia per la gestione dei dati è però ancora quella relazionale:

  • Tutti gli accessi ai dati avvengono tramite SQL;

  • Tutti le entità di interesse sono modellate tramite tabelle.

Oggi quasi tutti i principali produttori di RDBMS (Oracle, Informix, DB2,..) hanno esteso i loro DBMS con caratteristiche object-relational. Tali estensioni presuppongono anche una estensione del linguaggio SQL. Allo stato attuale ogni RDBMS ha un’estensione proprietaria object-relational.

Le estensioni differiscono per:

  • Le funzionalità che supportano;

  • Il modo di realizzarle;

  • Le estensioni apportate al linguaggio SQL.

E questo nonostante SQL-99 che è uno standard creato appositamente.

SQL-99 è un tentativo di standardizzazione dell’estensione object-relational del modello relazionale. Al momento della definizione di SQL-99 i maggiori produttori di RDBMS avevano già la loro versione delle estensioni object-relational. SQL-99 non standardizza tutte le funzionalità object-relational presenti nei DBMS commerciali.

E’ quindi ancora presto per capire quando e in che misura lo standard sarà recepito a livello commerciale. La sensazione è che sarà necessario un ulteriore standard che medi tra tutte le estensioni proprietarie.

 

Estensione del sistema di tipi. 

In SQL-92 i tipi di un attributo in una relazione possono essere:

 

  • numerici (interi, reali, ecc.);

  • carattere (stringhe di lunghezza fissa o variabile, caratteri singoli);

  • temporali (date, time, datetime, interval);

  • booleani (true, false);

  • non strutturati (BYTE, TEXT, BLOB, CLOB);

Per ogni tipo built-in esistono un insieme fisso e predefinito di operazioni che su di esso possono essere eseguite. Questo fatto introduce delle limitazioni rendono spesso difficile la rappresentazione di dati reali.

 

Per questo motivo è stato introdotto un’estensione del sistema dei tipi che prevede: 

  • Tipi semplici;

  • Abstract data types;

  • User-defined types;

  • Tipi riferimento;

  • Tipi complessi: tipi record e tipi collezione;

La URL per il Trackback di questo messaggio è:
https://blog.libero.it/Evolution2001/trackback.php?msg=9152513

I blog che hanno inviato un Trackback a questo messaggio:
Nessun trackback

 
Commenti al Post:
Nessun commento
 
 
 

© Italiaonline S.p.A. 2024Direzione e coordinamento di Libero Acquisition S.á r.l.P. IVA 03970540963