Caricare documenti e articoli online 
INFtube.com è un sito progettato per cercare i documenti in vari tipi di file e il caricamento di articoli online.
Meneame
 
Non ricordi la password?  ››  Iscriviti gratis
 

Falone Luca

informatica


Inviare l'articolo a Facebook Inviala documento ad un amico Appunto e analisi gratis - tweeter Scheda libro l'a yahoo - corso di

Tesina di informatica


Il linguaggio SQL


Caratteristiche dei linguaggi per Database

I linguaggi per basi di dati relazionali possiedono i comandi per :

  • definizione del data base
  • manipolazione dei dati
  • associazione tra tabelle diverse
  • interrogazioni degli utenti.

Ci sono alcune caratteristiche comuni ai diversi linguaggi :




  • si basano sulla visione tabellare dei dati
  • non richiedono la specificazione dei percorsi per ritrovare i dati
  • operano su gruppi di righe o sull'intera tabella, anziché su una riga per volta
  • usano interfacce per l'utente (a menu o grafiche).

Identificatori, dati, costanti e operatori

Identificatori : nomi di tabelle e di colonne

Per identificare il nome di una colonna :
NomeTabella.NomeColonna
(separati dal punto).

bulletrd.gif (188 byte)Tipi standard per gli attributi:

CHARACTER, DATE, INTEGER, SMALLINT, FLOAT, ecc.

N.B.
Ci possono essere differenze della dichiarazione dei dati in diverse versioni del linguaggio SQL nei prodotti DBMS (per esempio in Access per Windows).

bulletrd.gif (188 byte)Il valore Null nelle colonne della tabella indica un valore non disponibile o non definito.

bulletrd.gif (188 byte)Le costanti stringa sono delimitate dai caratteri ' (apice).

bulletrd.gif (188 byte)Si possono usare gli operatori NOT, AND e OR nella scrittura delle condizioni.

La definizione delle tabelle

Il linguaggio SQL possiede i comandi per creare, modificare ed eliminare le tabelle dal database relazionale, cioè le funzioni di linguaggio DDL (Data Definition Language) :

bulletrd.gif (188 byte)CREATE TABLE

seguito dal nome della tabella e dall'elenco degli attributi;

per ogni attributo occorre specificare il nome e il tipo di dato.

bulletrd.gif (188 byte)ALTER TABLE

per aggiungere una nuova colonna (ADD) a quelle già esistenti

per togliere una colonna (DROP).

bulletrd.gif (188 byte)DROP

seguito dal nome della tabella, per eliminare una tabella.

Nota :
nei prodotti DBMS moderni queste operazioni vengono eseguite in modo usando l'interfaccia utente (a menu o grafica).

I comandi per la manipolazione dei dati

Il linguaggio SQL possiede i comandi per inserire, modificare ed eliminare le righe di una tabella, cioè le funzioni di linguaggio DML (Data Manipulation Language) :

bulletrd.gif (188 byte)INSERT

inserire nuovi dati nelle righe della tabella

bulletrd.gif (188 byte)UPDATE

aggiornare i valori nella tabella

bulletrd.gif (188 byte)DELETE

cancellare righe della tabella.

Nota :
nei prodotti DBMS moderni queste operazioni vengono eseguite in modo usando l'interfaccia utente (a menu o grafica).

Il comando Select

E' il comando principale di SQL che realizza le funzioni di linguaggio per le interrogazioni (Query Language) :

  • attivare le interrogazioni sulle relazioni
  • implementare le operazioni relazionali per ottenere nuove tabelle.

Struttura generale del comando Select :

SELECT .....

FROM .....

WHERE .....

  • dopo Select : nomi delle colonne da elencare (per indicare tutti gli attributi si scrive l'asterisco * accanto a Select )
  • dopo From : il nome o i nomi delle tabelle
  • dopo Where : la condizione da controllare sui valori delle righe (anche più condizioni combinate con gli operatori AND, OR e NOT).

Con SELECT DISTINCT... le righe duplicate nella tabella risultante vengono ridotte a una.

Esistono tre tipi di relazioni tra tabelle:



Relazione uno a molti
 
Una relazione tra due tabelle nelle quali ogni record di una tabella presenta più record correlati nell'altra tabella.

es. relazione tra la tabella di anagrafica agente e anagrafica clienti

Elenco

clienti


 

Anagrafica rappresentanti


 

Lo stesso tipo di relazione potrebbe essere implementato tra la tabella clienti e la tabella ordini.

Relazione molti a molti
 
Una relazione tra due tabelle le quali presentano ciascuna una relazione uno-a-molti con una terza tabella comune.

es. relazione tra la tabella impiegati, clienti e ordini: infatti l'impiegato può aver fatto più ordini per lo stesso cliente, a sua volta il cliente può aver fatto più ordini allo stesso impiegato.

Modello E/R:

Relazione uno ad uno
 
Una relazione tra due tabelle in cui ogni record di una tabella presenta un solo record correlato nell'altra tabella.

La relazione uno a uno risulta utile qualora si intenda dividere una tabella che altrimenti presenterebbe un numero di campi eccessivo infatti essa mette in congiunzione due chiavi primarie di due tabella diverse, pertanto ad ogni riga di una tabella corrisponde una sola riga dell'altra.

es. relazione tra tabelle reparti e responsabile generale


Modello di database per gli esempi successivi

Viene descritto ora il database che verrà utilizzato per gli esercizi successivi.
E' un database generico con anagrafica e movimenti di uso molto frequente: per esempio, clienti e fatture, studenti ed esami sostenuti, contribuenti e versamenti di imposta, prodotti e movimenti di magazzino, conti e movimenti contabili, ecc.)

Due entità : Anagrafica e Movimento
Associazione : uno a molti

Attraverso il modello E/R passiamo alla rappresentazione grafica delle relazione esistente tra due tabelle: la prima contenente i dati anagrafici dei clienti e la seconda relativa ai movimenti di ciascun cliente.

Ogni riga della tabella Anagrafica può essere relativa a una o più Movimenti.
Ogni Movimento deve essere riferito a una sola riga sulla tabella Anagrafica.

Struttura tabelle: Anagrafica (Codice, Nome, Indirizzo)
Movimento (Numero, Descrizione, Data, Importo, Codice)

Codice : chiave della tabella Anagrafica
Numero : chiave della tabella Movimento
Codice : chiave esterna della tabella Movimento

Le operazioni relazionali nel linguaggio SQL
Selezione

SELECT *

FROM NomeTabella

WHERE Condizione

Esempio:

Date le tabelle:
Anagrafica (Codice, Nome, Indirizzo)
Movimento (Numero, Descrizione, Data, Importo, Codice)
si vuole ottenere l'elenco delle anagrafiche con Indirizzo = 'Milano'

L'operazione relazionale che consente di ottenere i dati richiesti è:

Selezione di Anagrafica per Indirizzo = 'Milano'









Privacy

Articolo informazione


Hits: 1201
Apprezzato: scheda appunto

Commentare questo articolo:

Non sei registrato
Devi essere registrato per commentare

ISCRIVITI

E 'stato utile?



Copiare il codice

nella pagina web del tuo sito.


Copyright InfTub.com 2020