Che materia stai cercando?

Informatica - le tabelle - SQL Appunti scolastici Premium

Appunti con esempi per l'idoneità di Informatica del professor Grande sulle tabelle in SQL: Select, l'inserimento dei dati (cancellazione - DROP, inserimento - INSERT, modifica - UPDATE e creazione - CREATE), le tipologie di dati (numerico, data, carattere).

Esame di Informatica docente Prof. A. Grande

Anteprima

ESTRATTO DOCUMENTO

2.1 L'inserimento dei dati

Abbiamo premesso che, non essendo tra i nostri obiettivi quello di discutere di problematiche

inerenti alla progettazione delle tabelle, non entreremo nel merito di questo argomento e di altri

collegati. Riportiamo comunque, a titolo di esempio, i comandi SQL utilizzati per la creazione e

l'inserimento dei dati che compongono le tabelle di cui sopra, senza accennare alle ragioni che

hanno portato a questa organizzazione. La comprensione della sequenza di tali comandi insieme ad

altre considerazioni, sara' utile a quanti vorranno eseguire analoghe operazioni.

La prima osservazione riguarda la sequenza dei comandi che abbiamo utilizzato. Questa si compone

di:

- un comando di cancellazione di una relazione DROP TABLE;

- un comando di creazione CREATE TABLE;

- un insieme di comandi di inserimento INSERT, uno per ogni tupla della corrispondente relazione.

Tale sequenza garantisce sempre il corretto inserimento dei dati di cui sopra. Se infatti, nella nostra

base di dati si trova gia' una tabella identica, il solo comando CREATE produce un errore, mentre i

successivi comandi INSERT agirebbero comunque, provocando l'inserimento di tuple che se gia'

inserite, verrebbero cosi duplicate (*). Notiamo nel comando CREATE TABLE,

-------

(*) uno dei principi della teoria relazionale, prevede che in una

relazione non debbano esistere due tuple uguali e distinte.

-------

accanto al nome di ciascuna colonna, la specifica dell'attributo per quella colonna. Un

approfondimento di questo verra svolto piu' avanti. Con il comando INSERT, procediamo

all'inserimento dei valori che compongono ciascuna tupla; le costanti alfanumeriche sono racchiuse

tra apici, i valori non disponibili, quelli che appaiono "vuoti" nelle tabelle, utilizzano il valore

NULL appositamente deputato a questo.

Eliminiamo la relazione classi (se esistente):

DROP TABLE classi;

Procediamo alla creazione della relazione classi che si compone degli attributi classi (un carattere

numerico), inf e sup (ciascuna contenente dei numeri al massimo di sette caratteri):

CREATE TABLE classi (classi NUMBER(1),

inf NUMBER(7),

sup NUMBER(7));

Inseriamo i dati nella relazione appena creata:

INSERT INTO classi VALUES(1,5000,7000);

INSERT INTO classi VALUES(2,7001,10000);

. . .

INSERT INTO classi VALUES(6,30001,100000);

Eliminiamo la relazione modello:

DROP TABLE modello;

Creiamo la relazione modello:

CREATE TABLE modello (nome CHAR(16) NOT NULL,

cc NUMBER(5),

a120kmh NUMBER(4,1),

urb NUMBER(4,1),

lit NUMBER(11),

ggc NUMBER(4),

nocasa CHAR(1) NOT NULL,

uso CHAR(5));

Inseriamo i dati della relazione:

INSERT INTO modello VALUES('126',652,null,6.8,5650,0,'3','utili');

. . . . . . . . . .

INSERT INTO modello VALUES('croma td s',2445,6.3,8.4,25250,60,'3','lusso');

Alcune considerazioni sul comando CREATE. La prima riguarda il significato della parola NOT

NULL che si trova associata ai due attributi nome e nocasa: questo deve essere fatto in tutti i casi in

cui si voglia condizionare l'operazione di inserimento della tupla, alla presenza di un valore

corrispondente. Se tale valore non e' presente, ovvero viene assegnato con NULL, l'istruzione

INSERT non viene eseguita.

2.2 Tipologie di dati

La seconda riguarda i termini (CHAR, NUM) che si trovano di fianco al nome di ciascun attributo.

Queste vengono desunti in basealla natura del dato corrispondente; riportiamo un riassunto delle

tipologie ammesse consigliando di consultare i manuali del prodotto in uso per ottenere maggiori

informazioni su tipologie di dati non discusse o da approfondire:

NUMERICO DATA CARATTERE

number(w,d) date char(w)

decimal long

float(w,d)

integer(w)

smallint

- w, d indicano rispettivamente il numero totale di caratteri e, dove presente, le posizioni riservate

alla parte decimale. Il valore per d non e' obbligatorio e, se mancante, non produrra' la virgola;

- il tipo smallint viene utilizzato per valori numerici che occupano 16 bit (interi<=32767 e interi>=-

32768) ;

- per il tipo char, il valore di w deve essere <240;

- il tipo long puo' essere utilizzato soltanto in un attributo per ciascuna relazione e si riferisce a

stringhe piu' lunghe di 240 caratteri.

Data la quantita' e le differenze dei software oggi disponibili, non e' possibile descrivere

univocamente la procedura necessaria alla cancellazione/creazione di relazioni ovvero

all'inserimento di tuple. In alcuni casi si procede con gruppi di istruzioni raccolte in un file, in altri

saranno disponibili procedure interattive controllate da appositi menu. Se per esempio, stiamo

utilizzando Oracle in una delle versioni 4 o 5 con il sistema operativo Ms-Dos, le istruzioni di cui

sopra possono essere scritte, in formato ASCII, in un file con nome di file Dos ed estensione

rispettivamente .UFI o .SQL tramite qualsiasi programma di videoscrittura ed eseguite da ambiente

UFI o SQL con il comando:

START nome_di_file (senza estensione)

L'ultima avvertenza riguarda una caratteristica, che avra' notevoli conseguenze in seguito,

dell'ambiente relazionale: si tenga presente che, indipendentemente dal prodotto utilizzato, tutta

l'informazione gestita dal DBMS, e' a sua volta organizzata in relazioni. Avremo cosi', ad esempio,

una relazione che contiene i nomi di tutte le relazioni gestite da quel RDBMS, un'altra relazione che

contiene per ciascuna relazione, le informazioni associate in termini di attributi e natura degli

attributi ad ogni relazione ecc. Nel caso di Oracle la relazione con i nomi di tutte le relazioni

disponibili a quell'utente si ottiene da ambiente UFI o SQL con il comando (si prenda nota dei nomi

degli attributi della relazione TAB):


PAGINE

5

PESO

23.12 KB

PUBBLICATO

+1 anno fa


DETTAGLI
Esame: Informatica
Corso di laurea: Corso di laurea in economia e commercio (POMEZIA, ROMA)
SSD:
A.A.: 2013-2014

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher valeria0186 di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università La Sapienza - Uniroma1 o del prof Grande Antonio.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!

Altri appunti di Informatica

Informatica - le reti e Internet
Appunto
Informatica - i fondamenti di Excel - (parte 1)
Appunto
Informatica - la Join - SQL
Appunto
Informatica - i fondamenti di Excel  (parte 2)
Appunto