Skillbook Logo
foto profilo

Skill Factory

Lista post > Ricominciamo ... dal linguaggio SQL Lezione 6

Ricominciamo ... dal linguaggio SQL Lezione 6

Gino Visciano | Skill Factory - 16/03/2016 11:18:00 | in Tutorials

Benvenuti alla sesta lezione, nella lezione precedente avete visto i comandi del linguaggio SQL per implementare il Database per gestire libri dati in prestito, adesso, utlizzando i comandi DDL, implementerete il Database.

Come DBMS potete usare MySQL, trovate tutto quello che vi serve installando XAMPP. Per scaricare il software d'installazione, cliccate qui.

Dopo l'istallazione del prodotto, per lanciarlo dovete cliccare sull'icona di XAMPP

Quando appare la maschera seguente, avviate prima Apache e poi MySQL come indicato:

Successivamente per lanciare MySQL, dovete cliccare sul bottone ADMIN.

La maschera seguente mostra come appare il Pannello di Controllo di MySQL, con a sinistra i Database creati e in alto le schede di gestione. 

A questo punto, selezionando la scheda SQL, potete creare il Database.

Prima di tutto dovete creare il Database libri_prestati, con il comando create database, come mostra l'immagine seguente, per mandare in esecuzione il comando cliccate sul bottone esegui:

Dopo l'esecuzione del comando, il nome del Database dovrebbe apparire nell'elenco a sinistra, come mostra l'immagine seguente:

Dopo la creazione del Database per creare le Tabelle, dovete partire dallo Schema Fisico seguente ed eseguire gli Step indicati:

Prima d'iniziare, selezionate nell'elenco a sinistra il Database libri_prestati.

Step 1:

Creare la tabella Libri, con il comando:

CREATE TABLE LIBRI (
    CODICE_LIBRO INT AUTO_INCREMENT PRIMARY KEY,
    CODICE_ISBN CHAR(10) NOT NULL,
    TITOLO VARCHAR(50) NOT NULL,
    ID_GENERE INT,
    ID_EDITORE INT,
    ID_AUTORE INT,
    EDIZIONE CHAR(4)
);

L'immagine seguente mostra le informazioni della tabella Libri dopo la creazione, come si può vedere nella sezione indici è stata creata una chiave primaria:

Step 2:

Creare le tabelle tipizzate Autori, Generi ed Editori, con i comandi:

CREATE TABLE GENERI (ID INT AUTO_INCREMENT PRIMARY KEY, GENERE VARCHAR(50) NOT NULL);
CREATE TABLE EDITORI (ID INT AUTO_INCREMENT PRIMARY KEY, EDITORE VARCHAR(50) NOT NULL);
CREATE TABLE AUTORI (ID INT AUTO_INCREMENT PRIMARY KEY, AUTORE VARCHAR(50) NOT NULL);

Queste tre tabelle sono associate con la tabella Libri con un relazione da uno a molti.

 

Step 3:

Implementare i voncoli necessari per i controlli d'Integrità Referenziali tra le chiavi primarie delle tabelle Autori, Generi ed Editori e le rispettive chiavi esterne indicate nella tabella Libri, con i comandi:

ALTER TABLE LIBRI ADD CONSTRAINT FK_LIBRI_IDGENERE FOREIGN KEY (ID_GENERE) REFERENCES GENERI(ID);
ALTER TABLE LIBRI ADD CONSTRAINT FK_ILIBRI_IDEDITORI FOREIGN KEY (ID_EDITORE) REFERENCES EDITORI(ID);
ALTER TABLE LIBRI ADD CONSTRAINT FK_LIBRI_IDAUTORI FOREIGN KEY (ID_AUTORE) REFERENCES AUTORI(ID);

L'immagine seguente mostra le informazioni della tabella Libri dopo l'aggiunta dei vincoli d'integrità referenziale, come si può vedere nella sezione indici è state create tre chiavi esterne:

Step 4:

Creare la tabella Lettori, con il comando:

CREATE TABLE LETTORI (
CODICE_LETTORE INT AUTO_INCREMENT PRIMARY KEY,
NOME VARCHAR(50)  NOT NULL, COGNOME VARCHAR(50)   NOT NULL, ETA INT CHECK(ETA>=18 AND ETA<=99),
SESSO INT,
CODICE_FISCALE CHAR(16) UNIQUE NOT NULL,
INDIRIZZO VARCHAR(50),
CAP CHAR(5),
CITTA VARCHAR(100),
PROVINCIA CHAR(2),
TITOLO_DI_STUDIO VARCHAR(100));

L'immagine seguente mostra le informazioni della tabella Lettori dopo la creazione, come si può vedere nella sezione indici è stata creata una chiave primaria:

Step 5:

Creare la tabella tipizzata Tipo_contatto, con il comando:

CREATE TABLE TIPO_CONTATTO (CODICE_TIPO INT AUTO_INCREMENT PRIMARY KEY, TIPO VARCHAR(50) NOT NULL, ICONA BINARY);

Queste tabella è associata con la tabella Lettori con un relazione da molti a molti, quindi nel passaggio seguente creerete la tabella Contatti che vi permetterà d'implemetare la relazione richiesta.

Step 6:

Creare la tabella Contatti, con il comando:

CREATE TABLE CONTATTI (
CODICE_CONTATTTO INT AUTO_INCREMENT PRIMARY KEY,
ID_TIPO INT,
CONTATTTO VARCHAR(50)   NOT NULL,
CODICE_LETTORE INT,
CONSTRAINT FK_CONTATTI_CODICE_LETTORE FOREIGN KEY (CODICE_LETTORE) REFERENCES LETTORI (CODICE_LETTORE),
CONSTRAINT FK_CONTATTI_ID_TIPO FOREIGN KEY (ID_TIPO) REFERENCES TIPO_CONTATTO (CODICE_TIPO));

In questo esempio avete applicato l'integrità referenziale con le tabelle Lettori e Tipo_contatto, direttamente con il comando CREATE TABLE, evitando di utilizzare successivamente il comando ALTER TABLE, come invece avete fatto per la tabella Libri.

L'immagine seguente mostra le colonne della tabella Contatti e gli indici appena creati per applicare il vincolo d'integrità referenziale.

Per concludere ricordate che per visualizzare la struttura di una tabella potete usare il comando: DESCRIBE.

 


<< Lezione precedente           Lezione successiva >>


T U T O R I A L S    S U G G E R I T I


Share Button
TOP