create table create table

Transcript

create table create table
CREATE TABLE
SQL
Ha la seguente sintassi:
COMANDI DDL (Data Definition Language)
CREATE TABLE nome_tabella
nome_campo1 tipo clausole,
(
I comandi DDL sono:
nome_campo2 tipo clausole,
………….
………….
nome_campoN tipo clausole ;
CREATE TABLE
serve per definire (creare) la struttura di una tabella
)
ALTER TABLE
serve per modificare la struttura di una tabella
(aggiungere o eliminare un campo o modificarne il tipo)
DROP TABLE
serve per eliminare una tabella
1
CREATE TABLE
ALTER TABLE
Esempio. Creare una tabella tCli con la seguente struttura:
Campo Chiave Tipo
IdCli
Primaria Contatore
Nome
Testo(20)
Cogn
Testo(20)
DtNasc
Data/Ora
Fattur
Valuta
IdNaz
Esterna
Intero
nome_tabella: è il nome da assegnare alla nuova tabella
nome_campo1, nome_campo2, ecc.: sono i nomi dei campi
tipo: è il tipo di dato (testo, intero, data/ora, ecc.)
clausole: sono le eventuali proprietà del campo (chiave primaria
o esterna, obbligatorietà, ecc.). Non sono ovviamente
2
obbligatorie per tutti i campi
Ha la seguente sintassi:
• Per aggiungere un campo:
CREATE TABLE tCli
(IdCli AUTOINCREMENT PRIMARY KEY,
Nome CHAR(20),
Cogn CHAR(20),
DtNasc DATE,
Fatturato CURRENCY,
IdNaz INTEGER REFERENCES tNaz(IdNaz)
);
• La clausola REFERENCES serve a specificare la chiave primaria a cui si
collega la chiave esterna: il campo IdNaz della tabella tNaz
• AUTOINCREMENT corrisponde al tipo Contatore
3
ALTER TABLE nome_tabella
ADD nome_campo tipo
clausole;
• Per eliminare un campo:
ALTER TABLE nome_tabella
DROP nome_campo;
• Per modificare il tipo di un campo:
ALTER TABLE nome_tabella
ALTER nome_campo tipo
clausole;
4
1
ALTER TABLE
DROP TABLE
Esempio.
• Aggiungere un campo INDIR alla tabella tCli:
Ha la seguente sintassi:
ALTER TABLE tCli
ADD Indir CHAR(35);
DROP TABLE nome_tabella
• Eliminare il campo DtNasc dalla tabella tCli:
Esempio.
• Eliminare la tabella tCli:
ALTER TABLE tCli
DROP DtNasc;
• Modificare la lunghezza del campo Cogn della
tabella tCli:
DROP TABLE tCli
ALTER TABLE tCli
ALTER Cogn CHAR(30);
5
INSERT
SQL
Ha la seguente sintassi:
INSERT INTO nome_tabella
(nome_campo1, nome_campo2, …………., nome_campoN)
VALUES (valore1, valore2, …………., valoreN);
COMANDI DML (Data Manipulation Language)
I comandi DML sono:
nome_campo1, ecc.: sono i nomi dei campi del record
valore1, ecc.: sono i valori da assegnare ai campi del record
INSERT
serve per inserire un record in una tabella
Esempio.
UPDATE
• Inserire il seguente record nella tabella tCli:
Antonio Rossi 15/5/1985 8500 3
serve per aggiornare (modificare) uno o più record di una
tabella
INSERT INTO tCli
(Nome, Cogn, DtNasc, Fattur, IdNaz)
VALUES (“Antonio”, “Rossi”, #5/15/1985#, 8500, 3);
DELETE
serve per eliminare (cancellare) uno o più record di una
tabella
6
7
8
2
UPDATE
DELETE
Ha la seguente sintassi:
UPDATE nome_tabella
SET nome_campo1=valore1, nome_campo2=valore2, ……,
nome_campoN=valoreN
WHERE condizione;
nome_campo1, ecc.: sono i nomi dei campi da modificare
valore1, ecc.: sono i nuovi valori da assegnare ai campi
condizione: è la condizione che individua il/i record da modificare
Ha la seguente sintassi:
DELETE FROM nome_tabella
WHERE condizione;
condizione: è la condizione che individua il o i record da
eliminare
Esempio.
• Eliminare i record dei clienti con fatturato = 0:
Esempio.
• Incrementare del 3% il fatturato del cliente con codice 6:
UPDATE tCli
SET Fattur = Fattur + Fattur * 3 / 100
WHERE IdCli = 6;
DELETE FROM tCli
WHERE Fattur = 0;
9
10
3