Skip to content

14. Allegati

14.1. Il documento SGBD e SQL Server Express 2005

14.1.1. Installazione

Il documento SGBD SQL Server Express 2005 è disponibile all'URL [http://msdn.microsoft.com/vstudio/express/sql/download/]:

  • in [1]: prima scaricare e installare la piattaforma .NET 2.0
  • all'indirizzo [2]: quindi installare e scaricare SQL Server Express 2005
  • in [3]: quindi installare e scaricare SQL Server Management Studio Express, che consente di amministrare SQL Server

L'installazione di SQL Server Express crea una cartella in [Démarrer / Programmes ]:

  • in [1]: l'applicazione di configurazione di SQL Server. Consente inoltre di avviare/arrestare il server
  • in [2]: l'applicazione di amministrazione del server

14.1.2. Avvia / Arresta il server SQL

Come per i precedenti SGBD, il server SQL Express è stato installato come servizio Windows con avvio automatico. Modifichiamo questa configurazione:

[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:

  • in [1]: facciamo doppio clic su [Services]
  • in [2]: si nota che è presente un servizio denominato [SQL Server], che è in esecuzione ([3]) e che il suo avvio è automatico ([4]).
  • in [5]: è attivo anche un altro servizio collegato a SQL Server, denominato "SQL Server Browser", con avvio automatico.

Per modificare questo comportamento, facciamo doppio clic sul servizio [SQL Server]:

  • in [1]: impostiamo l’avvio del servizio su «manuale»
  • in [2]: lo si arresta
  • in [3]: si conferma la nuova configurazione del servizio

Si procederà allo stesso modo con il servizio [SQL Server Browser] (cfr. [5] sopra). Per avviare e arrestare manualmente il servizio SQL Server 2005, è possibile utilizzare l'applicazione [1] presente nella cartella [SQL server]:

  • in [1]: assicurarsi che il protocollo TCP/IP sia attivo (enabled), quindi accedere alle proprietà del protocollo.
  • in [2]: nella scheda [IP Addresses], opzione [IPAll]:
    • il campo [TCP Dynamic ports] viene lasciato vuoto
    • la porta di ascolto del server è impostata su 1433 in [TCP Port]
  • in [3]: un clic con il tasto destro del mouse sul servizio [SQL Server] consente di accedere alle opzioni di avvio/arresto del server. In questo caso, lo si avvia.
  • in [4]: il server SQL è stato avviato

14.1.3. Creazione di un utente JPA e di un database JPA

Avviamo il processo SGBD come indicato sopra, quindi l'applicazione di amministrazione [1] tramite il menu riportato di seguito:

  • in [1]: ci si connette a SQL Server come amministratore di Windows
  • in [2]: configurare le proprietà della connessione
  • in [3]: si autorizza una modalità mista di connessione al server: sia con un login Windows (un utente Windows), sia con un login al server SQL (account definito all’interno del server SQL, indipendente da qualsiasi account Windows).
  • in [3b]: si crea un utente del server SQL
  • in [4]: opzione [General]
  • in [5]: il nome utente
  • in [6]: la password (jpa qui)
  • in [7]: opzione [Server Roles]
  • in [8]: l'utente jpa avrà il diritto di creare database

Confermiamo questa configurazione:

  • in [9]: l'utente jpa è stato creato
  • in [10]: ci si disconnette
  • in [11]: ci si riconnette
  • in [12]: si effettua l'accesso come utente jpa/jpa
  • in [13]: una volta effettuato l'accesso, l'utente jpa crea un database
  • in [14]: il database si chiamerà jpa
  • in [15]: e apparterrà all'utente jpa
  • in [16]: il database jpa è stato creato

14.1.4. Creazione della tabella [ARTICLES] del database jpa

Creiamo una tabella [ARTICLES] a partire dal seguente script SQL:


/* creazione tabella */

CREATE TABLE ARTICLES (
    ID            INTEGER NOT NULL,
    NOM           VARCHAR(20) NOT NULL,
    PRIX          DOUBLE PRECISION NOT NULL,
    STOCKACTUEL   INTEGER NOT NULL,
    STOCKMINIMUM  INTEGER NOT NULL
);

INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (1, 'article1', 100, 10, 1);
INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (2, 'article2', 200, 20, 2);
INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (3, 'article3', 300, 30, 3);

/* vincoli di integrità */

ALTER TABLE ARTICLES ADD CONSTRAINT CHK_ID check (ID>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_PRIX check (PRIX>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKACTUEL check (STOCKACTUEL>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKMINIMUM check (STOCKMINIMUM>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_NOM check (NOM<>'');
ALTER TABLE ARTICLES ADD CONSTRAINT UNQ_NOM UNIQUE (NOM);


/* chiave primaria */

ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
  • in [1]: si apre uno script SQL
  • in [2]: si indica lo script SQL
  • in [3]: è necessario effettuare nuovamente l'autenticazione (jpa/jpa)
  • in [4]: lo script che verrà eseguito
  • in [5]: selezionare il database in cui verrà eseguito lo script
  • in [6]: eseguirlo
  • in [7]: il risultato dell'esecuzione: è stata creata la tabella [ARTICLES].
  • in [8]: si richiede di visualizzarne il contenuto
  • in [9]: il contenuto della tabella.

14.1.5. Il connettore ADO.NET di SQL Server Express

Il connettore ADO.NET è l'insieme delle classi che consentono a un'applicazione .NET di utilizzare il SGBD SQL Server Express 2005. Le classi del connettore si trovano nello spazio dei nomi [System.Data], disponibile in modo nativo su tutte le piattaforme .NET.

14.2. Il SGBD MySQL5

14.2.1. Installazione

Il SGBD MySQL5 è disponibile all'URL [http://dev.mysql.com/downloads/]:

  • in [1]: scegliere la versione desiderata
  • all'indirizzo [2]: scegliere una versione di Windows
  • in [3]: scegliere la versione di Windows desiderata
  • in [4]: il file zip scaricato contiene un eseguibile [Setup.exe] [4b] che deve essere estratto ed eseguito per installare MySQL5
  • in [5]: scegliere un’installazione standard
  • in [6]: una volta completata l’installazione, è possibile configurare il server MySQL5
  • in [7]: scegliere una configurazione standard, quella che richiede meno domande
  • in [8]: il server MySQL5 sarà un servizio Windows
  • in [9]: per impostazione predefinita, l'amministratore del server è root senza password. È possibile mantenere questa configurazione o assegnare una nuova password a root. Se l'installazione di MySQL5 segue la disinstallazione di una versione precedente, questa operazione potrebbe non andare a buon fine. È più difficile tornare indietro.
  • in [10]: viene richiesta la configurazione del server

L'installazione di MySQL5 crea una cartella all'interno di [Démarrer / Programmes ]:

Image

È possibile utilizzare [MySQL Server Instance Config Wizard] per riconfigurare il server:

  • in [3]: si modifica la password di root (in questo caso root/root)

14.2.2. Avviare / Arrestare MySQL5

Il server MySQL5 è stato installato come servizio Windows ad avvio automatico, c.a.d avviato all'avvio di Windows. Questa modalità di funzionamento è poco pratica. La modificheremo:

[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:

  • in [1]: facciamo doppio clic su [Services]
  • in [2]: si nota che è presente un servizio denominato [MySQL], che è in esecuzione ([3]) e che il suo avvio è automatico ([4]).

Per modificare questa impostazione, facciamo doppio clic sul servizio [MySQL]:

  • in [1]: impostiamo l’avvio del servizio su manuale
  • in [2]: lo si arresta
  • in [3]: si conferma la nuova configurazione del servizio

Per avviare e arrestare manualmente il servizio MySQL, è possibile creare due collegamenti:

  • in [1]: il collegamento per avviare MySQL5
  • e [2]: il collegamento per arrestarlo

14.2.3. Client di amministrazione MySQL

Sul sito di MySQL è possibile trovare i client di amministrazione di SGBD:

  • in [1]: scegliere [MySQL GUI Tools], che raggruppa vari client grafici che consentono sia di amministrare il SGBD, sia di utilizzarlo
  • in [2]: scegliere la versione Windows più adatta
  • in [3]: si scarica un file .msi da eseguire
  • in [4]: una volta completata l’installazione, nella cartella [Menu Démarrer / Programmes / mySQL] compaiono nuovi collegamenti.

Avviamo MySQL (tramite i collegamenti creati in precedenza), quindi avviamo [MySQL Administrator] dal menu in alto:

  • in [1]: inserite la password dell’utente root (in questo caso “root”)
  • in [2]: l'accesso è avvenuto e si vede che MySQL è attivo

14.2.4. Creazione di un utente jpa e di un database jpa

Ora creiamo un database denominato jpa e un utente con lo stesso nome. Innanzitutto l’utente:

  • in [1]: selezioniamo [User Administration]
  • in [2]: si fa clic con il tasto destro nella sezione [User accounts] per creare un nuovo utente
  • in [3]: l'utente si chiama jpa e la sua password è jpa
  • in [4]: confermare la creazione
  • in [5]: l'utente [jpa] compare nella finestra [User Accounts]

Ora il database:

  • in [1]: selezione dell'opzione [Catalogs]
  • in [2]: clic con il tasto destro sulla finestra [Schemata] per creare un nuovo schema (che indica un database)
  • in [3]: si assegna un nome al nuovo schema
  • in [4]: compare nella finestra [Schemata]
  • in [5]: si seleziona lo schema [jpa]
  • in [6]: compaiono gli oggetti dello schema [jpa], in particolare le tabelle. Non ce ne sono ancora. Con un clic destro sarebbe possibile crearne alcune. Lasciamo che sia il lettore a farlo.

Torniamo all’utente [jpa] per assegnargli tutti i diritti sullo schema [jpa]:

  • in [1], poi in [2]: si seleziona l’utente [jpa]
  • in [3]: selezionare la scheda [Schema Privileges]
  • in [4]: si seleziona lo schema [jpa]
  • in [5]: si assegnano all’utente [jpa] tutti i privilegi sullo schema [jpa]
  • in [6]: si confermano le modifiche apportate

Per verificare che l'utente [jpa] possa lavorare con lo schema [jpa], si chiude l'amministratore MySQL. Lo si riavvia e questa volta ci si connette con il nome [jpa/jpa]:

  • in [1]: si effettua l’autenticazione (jpa/jpa)
  • in [2]: la connessione è andata a buon fine e in [Schemata] si vedono gli schemi su cui si hanno i diritti. Si vede lo schema [jpa].

Ora creeremo una tabella [ARTICLES] utilizzando uno script SQL.

  • in [1]: utilizzare l’applicazione [MySQL Query Browser]
  • in [2], [3], [4]: effettuare l'accesso (jpa / jpa / jpa)
  • in [5]: aprire uno script SQL per eseguirlo
  • in [6]: specificare il seguente script [schema-articles.sql]:
/******************************************************************************/
/****                                                                 Tabelle ****/
/******************************************************************************/



CREATE TABLE ARTICLES (
    ID            INTEGER NOT NULL,
    NOM           VARCHAR(20) NOT NULL,
    PRIX          DOUBLE PRECISION NOT NULL,
    STOCKACTUEL   INTEGER NOT NULL,
    STOCKMINIMUM  INTEGER NOT NULL
);

INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (1,'article1', 100, 10, 1);
INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (2,'article2', 200, 20, 2);
INSERT INTO ARTICLES (ID, NOM, PRIX, STOCKACTUEL, STOCKMINIMUM) VALUES (3,'article3', 300, 30, 3);

COMMIT WORK;



/* Definizione dei vincoli di controllo */

ALTER TABLE ARTICLES ADD CONSTRAINT CHK_ID check (ID>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_PRIX check (PRIX>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKACTUEL check (STOCKACTUEL>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKMINIMUM check (STOCKMINIMUM>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_NOM check (NOM<>'');


/******************************************************************************/
/****                                                     Vincoli di unicità ****/
/******************************************************************************/

ALTER TABLE ARTICLES ADD CONSTRAINT UNQ_NOM UNIQUE (NOM);


/******************************************************************************/
/****                                                           Chiavi primarie ****/
/******************************************************************************/

ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
  • in [7]: lo script caricato
  • in [8]: lo si esegue
  • in [9]: la tabella [ARTICLES] è stata creata

14.2.5. Installazione del connettore ADO.NET da MySQL5

Il connettore ADO.NET da MySQL5 è disponibile (aprile 2008) all'indirizzo [http://dev.mysql.com/downloads/connector/net/5.1.html]:

L'installazione di questo connettore aggiunge uno spazio dei nomi alla piattaforma .NET:

14.2.6. Installazione del driver ODBC di MySQL5

Il connettore ODBC (Open DataBase Connectivity) di MySQL5 è disponibile (aprile 2008) all'indirizzo [http://dev.mysql.com/downloads/connector/odbc/3.51.html]:

Dopo l’installazione, è possibile verificare la presenza del connettore ODBC nel modo seguente:

  • in [1], selezionare [Outils d'administration] (su XP Pro: Menu Start / Pannello di controllo / Prestazioni e manutenzione / Strumenti di amministrazione)
  • in [2], fare doppio clic su [Sources de données (ODBC)]
  • in [3], selezionare la scheda [Pilotes ODBC]
  • in [4], il driver ODBC di MySQL