Guida Completa Oracle8 Italiano

  • View
    159

  • Download
    0

Embed Size (px)

DESCRIPTION

ORACLE è il database più diffuso del mondo. Funziona su praticamente tutti i tipi di computer, da PC e Macintosh fino ai minicomputer e ai mainframe. In tutte queste macchine il funzionamento è virtualmente identico, perciò basta imparare a utilizzarlo su una piattaforma per poter passare alle altre senza problemi. Per questo utenti e sviluppatori di ORACLE sono molto richiesti dalle aziende e risulta facile trasportare le proprie conoscenze e capacità in ambienti diversi. La documentazione di ORACLE è completa e assai voluminosa, infatti comprende oltre cinquanta volumi. La guida completa ORACLE8 è il primo libro che raccoglie tutte le principali definizioni, i comandi, le funzioni, le funzionalità e i prodotti legati a ORACLE in un unico volume, una guida di riferimento che tutti gli utenti e gli sviluppatori dovrebbero tenere a portata di mano.Le persone a cui si rivolge questo libro possono essere distinte in tre categorie:• Utenti finali di ORACLE. È possibile utilizzare ORACLE per operazioni estremamente semplici come inserire dati ed eseguire report standard, ma in questo modo non se ne sfruttano le potenzialità. È come acquistare una potente macchina sportiva e poi trainarla con un cavallo. Con il materiale introduttivo fornito nelle prime due parti di questo libro, anche un utente finale quasi del tutto privo di esperienza nell’elaborazione dei dati può divenire un piccolo esperto, in grado di generare report con indicazioni in italiano, guidare gli sviluppatori nella creazione di nuove funzionalità e migliorare la velocità e la precisione in un’attività. Il linguaggio di questo libro è semplice e chiaro, privo di termini gergali. Le conoscenze di computer o database richieste come presupposto al lettore sono assai poche. Il libro guida i principianti a diventare degli esperti con una struttura semplice da seguire e numerosi esempi concreti.• Sviluppatori che si avvicinano a ORACLE per la prima volta. Con tutti i volumi di cui è dotata la documentazione di ORACLE, trovare un comando o un concetto importante può rivelarsi un’operazione molto lunga.Questo libro cerca di fornire un metodo meglio organizzato e più efficiente di apprendere i fondamenti del prodotto. Lo sviluppatore che non conosce ORACLE viene condotto in una rapida panoramica sui concetti di base, accompagnato nelle aree più complesse, informato di possibili incomprensioni circa il prodotto e lo sviluppo di database relazionali, guidato con principi chiari per lo sviluppo di applicazioni.• Sviluppatori esperti in ORACLE. Come per tutti i prodotti di ampio respiro e molto sofisticati, esistono importanti aspetti riguardo ai quali vi è poca o nessuna documentazione. La conoscenza giunge con l’esperienza, ma spesso non viene trasferita agli altri. Questo libro approfondisce molti di questi argomenti, come la precedenza negli operatori UNION, INTERSECTION e MINUS, l’utilizzo di SQLPLUS come generatore di codice, l’ereditarietà e CONNECT BY, l’eliminazione di NOT IN con un join esterno, l’utilizzo di ConText, l’implementazione delle opzioni relazionali a oggetti e molti altri. Nel testo sono inoltre chiariti molti aspetti che spesso sono oggetto di confusione e suggeriti rigorosi principi guida per convenzioni di denominazione, tecniche di sviluppo delle applicazioni,progettazione e prestazioni.Per qualsiasi utente e sviluppatore, oltre duecento pagine del libro sono dedicate a una completa guida di riferimento alfabetica che contiene tutti i principali aspetti, comandi, funzioni e caratteristiche di ORACLE, con sintassi, riferimenti incrociati ed esempi. Si tratta della più ampia guida di riferimento pubblicata su questo argomento.

Text of Guida Completa Oracle8 Italiano

  • La guida completa

  • GEORGE KOCH, KEVIN LONEY

    LA GUIDA COMPLETAORACLE8

    McGraw-Hill

    Milano New York San Francisco Washington, D.C. Auckland BogotLisbon London Madrid Mexico City Montreal New Delhi San Juan

    Singapore Sydney Tokyo Toronto

  • EDITOR: Paola Rossi

    REDAZIONE: Valeria Camatta

    PRODUZIONE: Gino La Rosa

    REALIZZAZIONE EDITORIALE: Infostudio Monza

    GRAFICA DI COPERTINA: progetto di Achilli e Ghizzardi& Associati Milano

    STAMPA: Arti Grafiche Murelli Fizzonasco di Pieve Emanuele (MI)

    I diritti di traduzione, di riproduzione, di memorizzazione elettronica e di adattamentototale o parziale con qualsiasi mezzo (compresi i microfilm e le copie fotostatiche) sonoriservati per tutti i paesi.

    Ogni cura posta nella creazione, realizzazione, verifica e documentazione dei programmicontenuti in questo libro, tuttavia n lAutore n la McGraw-Hill Libri Italia possonoassumersi alcuna responsabilit derivante dallimplementazione dei programmi stessi, npossono fornire alcuna garanzia sulle prestazioni o sui risultati ottenibili dallutilizzo deiprogrammi. Lo stesso dicasi per ogni persona o societ coinvolta nella creazione, nellaproduzione e nella distribuzione di questo libro.

    Nomi e marchi citati sono generalmente depositati o registrati dalle rispettive caseproduttrici.

    Printed in Italy1234567890AGMLLC921098ISBN 88 386 048351a edizione luglio 1998

    Titolo originale: Oracle8 The Complete ReferenceEdizione originale: Osborne/McGraw-HillCopyright 1997 by The McGraw-Hill Companies

    Copyright 1998 McGraw-Hill Libri Italia srlPiazza Emilia 5, 20129 Milano

  • Indice

    Introduzione XIII

    PARTE PRIMA CONCETTI FONDAMENTALIDEI DATABASE 1

    Capitolo 1 Condividere conoscenze e successo 31.1 Lapproccio cooperativo 51.2 Tutti hanno dei dati 61.3 Il linguaggio familiare di ORACLE 71.4 Alcuni esempi comuni 131.5 Un esempio vecchio di 100 anni 15

    Capitolo 2 I pericoli di un database relazionale 172.1 davvero facile come sembra? 172.2 Quali sono i rischi? 182.3 Limportanza della nuova visione 192.4 Codici, abbreviazioni e standard

    di denominazione 202.5 Perch vengono utilizzati i codici

    e non la lingua corrente? 222.6 Come arginare la confusione 232.7 Maiuscole e minuscole nei nomi e nei dati 352.8 Normalizzazione dei nomi 352.9 Cogliere lopportunit 36

  • VI I N D I C E

    PARTE SECONDA SQL: DA PRINCIPIANTI A ESPERTI 37

    Capitolo 3 Le parti fondamentali del discorso in SQL 393.1 Stile 413.2 Utilizzo di SQL per selezionare dati da tabelle 423.3 I comandi select, from, where e order by 453.4 Logica e valore 473.5 LIKE 513.6 Un altro impiego delle sottoquery con where 583.7 Come combinare le tabelle 623.8 Creazione di una vista 64

    Capitolo 4 Elementi di base dei database relazionalia oggetti 694.1 obbligatorio utilizzare gli oggetti? 694.2 Perch utilizzare gli oggetti? 704.3 Tutti possiedono degli oggetti 714.4 Un esempio di oggetto comune 774.5 Analisi e progettazione orientata agli oggetti 844.6 I prossimi capitoli 85

    Capitolo 5 Report e comandi fondamentali di SQLPLUS 875.1 Creazione di un report semplice 905.2 Altre caratteristiche 1015.3 Controllo dellambiente SQLPLUS 1085.4 I fondamenti 110

    Capitolo 6 Ottenere e modificare informazioni di testo 1136.1 I tipi di dati 1146.2 Che cos una stringa? 1146.3 Notazione 1156.4 Concatenazione (||) 1176.5 Come tagliare e incollare le stringhe 1186.6 Le funzioni stringa order by e where with 1346.7 Riepilogo 138

    Capitolo 7 Giocare con i numeri 1397.1 Le tre classi delle funzioni numeriche 1397.2 Notazione 1417.3 Funzioni a valori singoli 1427.4 Funzioni di gruppo 1507.5 Funzioni di elenco 1577.6 Ricerca di righe con MAX o MIN 1587.7 Precedenza e parentesi 1597.8 Riepilogo 161

  • I N D I C E VII

    Capitolo 8 Le date 1638.1 Aritmetica delle date 1638.2 ROUND e TRUNC in calcoli di date 1728.3 Formattazione di TO_DATE e TO_CHAR 1738.4 Date nelle clausole where 1828.5 Lanno 2000 184

    Capitolo 9 Funzioni di conversione e trasformazione 1879.1 Funzioni elementari di conversione 1899.2 Funzioni di conversione specializzate 1959.3 Funzioni di trasformazione 1959.4 Riepilogo 198

    Capitolo 10 Raggruppamento di righe 19910.1 Utilizzo di group by e having 20110.2 Viste di gruppi 20510.3 La potenza delle viste di gruppi 20910.4 where, having, group by e order by 213

    Capitolo 11 Una query dipendente da unaltra 21511.1 Sottoquery avanzate 21511.2 UNION, INTERSECT e MINUS 228

    Capitolo 12 Alcune possibilit complesse 24112.1 Creazione di una vista complessa 24112.2 Alberi genealogici e connect by 24612.3 Utilizzo di viste nella clausola from 255

    Capitolo 13 Creazione di un report in SQLPLUS 25713.1 Formattazione avanzata 25713.2 set termout off e set termout on 27213.3 Variabili in SQLPLUS 27213.4 Formattazione di numeri 27513.5 Utilizzo di mask.sql 27813.6 Utilizzo di buffer per salvare comandi

    SQLPLUS 27813.7 show all e spool 28113.8 Aggiunta di righe vuote 28113.9 Ulteriori controlli per la realizzazione

    di report 283

    Capitolo 14 Modifica dei dati: insert, update e delete 28514.1 insert 28514.2 rollback, commit e autocommit 28814.3 delete 29114.4 update 292

  • Capitolo 15 Utilizzo avanzato di funzioni e variabili 29715.1 Funzioni in order by 29715.2 Diagrammi a barre e grafici 29815.3 Utilizzo di TRANSLATE 30015.4 Copia e incollamento complessi 30415.5 Conteggio delle ricorrenze di stringhe

    in stringhe pi lunghe 30815.6 Variabili e sostituzioni registrate 309

    Capitolo 16 La funzione DECODE 31516.1 if, then, else 31516.2 Esempio: datazione di fatture 31616.3 Trasposizione di una tabella 32116.4 Utilizzo di MOD in DECODE 32316.5 order by e RowNum 32516.6 Colonne e calcoli in then ed else 32716.7 Maggiore, minore e uguale in DECODE 329

    Capitolo 17 Creazione, scaricamento e modificadi tabelle e viste 33117.1 Creazione di una tabella 33117.2 Scaricamento di tabelle 33917.3 Modifica di tabelle 33917.4 Creazione di una vista 34117.5 Creazione di una tabella a partire da unaltra 34517.6 Creazione di una tabella di solo indice 34617.7 Utilizzo di tabelle partizionate 347

    Capitolo 18 ORACLE e lautorit 35318.1 Utenti, ruoli e privilegi 35318.2 Che cosa possono concedere gli utenti 35718.3 Concessione di risorse limitate 370

    Capitolo 19 Modifica dellambiente di ORACLE 37119.1 Indici 37119.2 Tablespace e struttura del database 38019.3 Cluster 38519.4 Sequenze 386

    Capitolo 20 SQLPLUS 38920.1 Generazione di codice per una query 38920.2 Caricamento di variabili 39520.3 Creazione e annidamento di file di avvio

    e comandi 39720.4 Riepilogo 401

    VIII I N D I C E

  • Capitolo 21 Accesso a dati remoti 40321.1 Link di database 40321.2 Utilizzo di sinonimi per la trasparenza

    di locazione 41021.3 Utilizzo della pseudocolonna User nelle viste 41121.4 Collegamenti dinamici: utilizzo

    del comando copy di SQLPLUS 41321.5 Connessione a un database remoto 41521.6 Strumenti di gestione: Oracle*Names 416

    Capitolo 22 Introduzione a PL/SQL 41922.1 PL/SQL: nozioni di base 41922.2 La sezione delle dichiarazioni 42022.3 La sezione dei comandi eseguibili 42322.4 La sezione per la gestione delle eccezioni 434

    Capitolo 23 I trigger 43723.1 Privilegi di sistema necessari 43723.2 Privilegi di tabella richiesti 43823.3 Tipi di trigger 43823.4 Sintassi dei trigger 44023.5 Attivazione e disattivazione dei trigger 44723.6 Sostituzione di trigger 44923.7 Scaricamento di trigger 449

    Capitolo 24 Le procedure 45124.1 Privilegi di sistema necessari 45224.2 Privilegi di tabella necessari 45424.3 Procedure e funzioni 45424.4 Procedure e package 45424.5 Sintassi del comando create procedure 45524.6 Sintassi del comando create function 45624.7 Sintassi per il comando create package 46324.8 Visualizzazione del codice sorgente

    di oggetti procedurali esistenti 46724.9 Compilazione di procedure, funzioni

    e package 46724.10 Sostituzione di procedure, funzioni

    e package 46824.11 Scaricamento di procedure, funzioni

    e package 469

    Capitolo 25 Implementazione di tipi, viste oggettoe metodi 47125.1 Nuova analisi dei tipi di dati astratti 47125.2 Implementazione di viste oggetto 47625.3 Metodi 483

    I N D I C E IX

  • Capitolo 26 Tabelle annidate e array variabili 48926.1 Array variabili 48926.2 Tabelle annidate 49626.3 Problemi nella gestione di tabelle annidate

    e array variabili 503

    Capitolo 27 Utilizzo di LOB in ORACLE8 50727.1 Tipi di dati disponibili 50727.2 Definizione dei parametri di memorizzazione

    per i dati LOB 50927.3 Gestione e selezione dei valori LOB 511

    Capitolo 28 Gli snapshot 53128.1 Che cosa sono gli snapshot? 53228.2 Privilegi di sistema richiesti 53228.3 Privilegi richiesti per la tabella 53328.4 Snapshot semplici e snapshot complessi 53328.5 Snapshot di sola lettura e snapshot

    aggiornabili 53428.6 Sintassi del comando create snapshot 53528.7 Aggiornamento degli snapshot 54128.8 Snapshot e trigger 54728.9 Sintassi per il comando create snapshot log 54828.10 Visualizzazione di informazioni su snapshot

    esistenti 54928.11 Modifica di snapshot e log di snapshot 55128.12 Scaricamento di snapshot e log di snapshot 552

    Capitolo 29 Utilizzo di ConText per ricerche di testo 55529.1 Aggiunta di testo al database 55529.2 Query di testo dal database 55729.3 Impostazione dellopzione ConText 570

    Capitolo 30 Impostazione dellopzione ConText 57130.1 Impostazione del database per le ricerche

    di testo 57130.2 Impostazione della tabella per query ConText 57530.3 Ottimizzazione degli indici testuali 58330.4 Query in due passaggi 58430.5 Utilizzo dei servizi linguistici 586

    Capitolo 31 Concetti orientati agli oggetti avanzatiin ORACLE8 58931.1 Oggetti riga e oggetti colonna 58