edutecnica

Tabelle

         

Le tabelle vengono definite con il comando CREATE TABLE, seguito dal nome della tabella e dall’elenco degli attributi. Per ogni attributo occorre specificare il nome e il tipo di dato.

CREATE TABLE Personale
(id char(2),
Cognome char(30),
Nome char(20),
Filiale smallint,
Funzione char(15),
Livello smallint,
Stipendio integer );

Una tabella è a tutti gli effetti un'entità che nella rappresentazione concettuale dei diagrammi ER (Entity-Relationship) può essere descritta dal seguente simbolo:

entità ER

L'attributo id è la chiave primaria della tabella. Accanto alla definizione dell'attributo può essere specificata la clausola NOT NULL, per indicare che in tutte le righe della tabella quella colonna deve essere riempita con un valore non nullo, nelle operazioni di inserimento e di aggiornamento.

L'aspetto di questa tabella potrebbe essere il seguente:

id Cognome Nome Filiale Funzione Livello Stipendio Citta Prov
A1 Lai Ugo 4 Impiegato 3 1000 Milano MI
A2 Re Ivo 2 Operaio 5 600 Bergamo BG
A3 Bra Eva 1 Dirigente 2 1300 Varese VA
A4 Rigo Leo 3 Impiegato 4 1100 Rho MI
A5 Gori Mia 2 Impiegato 3 1000 Bergamo BG
A6 Rosi Teo 4 Dirigente 5 1500 Milano MI
A7 Nasi Pio 1 Operaio 2 650 Varese VA
A8 Orsi Bea 3 Impiegato 1 900 Rho MI

Si può utilizzare lo stesso nome di attributo in tabelle diverse; durante la gestione dei dati, poi, per distinguere gli attributi con nome uguale si usa la notazione:

Tabella.Attributo

separando il nome della tabella dal nome dell'attributo con il punto.

La struttura della tabella pud essere successivamente modificata con il comando ALTER TABLE, per aggiungere una nuova colonna (ADD) a quelle già esistenti, oppure per togliere una colonna (DROP). Per esempio, il comando seguente consente di inserire il nuovo attributo con la data di nascita del dipendente:

ALTER TABLE Personale
ADD Nascita date;

Utilizzando l'opzione DROP si puo togliere per esempio dalla tabella Personale l'attributo che si riferisce allo stipendio:

ALTER TABLE Personale
DROP Stipendio;

L’istruzione CREATE INDEX viene utilizzata per creare un nuovo indice su una tabella esistente, indicando il nome della tabella e il nome dell'attributo o degli attributi ai quali associare l'indice.
Se non si vuole che ci siano valori duplicati per l’attributo associato ad indice in righe diverse, occorre usare la clausola UNIQUE.

Ad esempio il comando

CREATE UNIQUE INDEX Ipers
ON Personale (Cognome, Nome);

crea un indice di nome Ipers sulla tabella Personale secondo gli attributi Cognome e Nome.
Una tabella o un indice possono essere eliminati con il comando DROP, seguito dal nome della tabella o dell'indice.
Per esempio il comando seguente cancella la tabella Personale:

DROP TABLE Personale;

In modo analogo per cancellare l'indice di nome Ipers si usa il comando:

DROP INDEX Ipers ON Personale;

Pagine correlate: