14. Appendici
14.1. Il SGBD e SQL Server Express 2005
14.1.1. Installazione
Il SGBD SQL Server Express 2005 è disponibile all'indirizzo [http://msdn.microsoft.com/vstudio/express/sql/download/] :
- in [1]: prima scaricare e installare la piattaforma .NET 2.0
- in [2]: quindi installare e scaricare SQL Server Express 2005
- in [3]: quindi installare e scaricare SQL Server Management Studio Express per amministrare SQL Server
L'installazione di SQL Server Express crea una cartella in [Start / Programmi]:
- 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 SQL Server
Come per il precedente SGBD, SQL Server Express è stato installato come servizio di avvio automatico di Windows. Modifichiamo ora questa configurazione:
[Start / Pannello di controllo / Prestazioni e manutenzione / Strumenti di amministrazione / Servizi ] :
- in [1]: facciamo doppio clic su [Servizi]
- in [2]: vediamo che è presente un servizio chiamato [SQL Server], che è avviato [3] e che si avvia automaticamente [4].
- in [5]: è attivo e si avvia automaticamente anche un altro servizio collegato a SQL Server, chiamato "SQL Server Browser".
Per modificare questa impostazione, facciamo doppio clic sul servizio [SQL Server]:
- in [1]: impostare l'avvio del servizio su manuale
- in [2]: lo arrestiamo
- in [3]: la nuova configurazione del servizio viene convalidata
Lo stesso vale per il servizio [SQL Server Browser] (vedi [5] sopra). Per avviare e arrestare il servizio SQL Server 2005, è possibile utilizzare l'applicazione [1] nella cartella [SQL Server]:
- in [1]: verificare che il protocollo TCP/IP sia attivo (abilitato), quindi accedere alle proprietà del protocollo.
- in [2]: nella scheda [Indirizzi IP], opzione [IPAll]:
- il campo [Porte TCP dinamiche] è lasciato vuoto
- la porta di ascolto del server è impostata su 1433 in [Porta TCP]
- in [3]: fare clic con il tasto destro del mouse sul servizio [SQL Server] per accedere alle opzioni di avvio/arresto del server. Fare clic con il tasto destro del mouse su [Ici Server] per avviarlo.
- in [4]: SQL Server viene avviato
14.1.3. Creazione di un utente JPA e di un database JPA
Avviamo il SGBD come mostrato sopra, quindi l'applicazione di amministrazione [1] tramite il menu sottostante:
- in [1]: connettersi a SQL Server come amministratore Windows
- in [2]: configurare le proprietà di connessione
- in [3]: è consentita una modalità mista di connessione al server: tramite un login Windows (un utente Windows) oppure tramite un login SQL Server (un account definito all'interno di SQL Server, indipendente da qualsiasi account Windows).
- in [3b]: creare un utente SQL Server
- in [4]: opzione [Generale]
- in [5]: il nome utente
- in [6]: la password (jpa qui)
- in [7]: opzione [Ruoli server]
- in [8]: l'utente jpa avrà il diritto di creare database
Questa configurazione è stata convalidata:
- in [9]: l'utente jpa è stato creato
- in [10]: disconnessione
- in [11]: ci ricolleghiamo
- in [12]: ci connettiamo 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] nel database jpa
Creiamo una tabella [ARTICLES] dal seguente script SQL:
/* table creation */
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);
/* integrity constraints */
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);
/* primary key */
ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
 |
- in [1]: aprire uno script SQL
- in [2]: si specifica lo script SQL
- in [3]: è necessario effettuare nuovamente l'autenticazione (jpa/jpa)
- in [4]: lo script da eseguire
- in [5]: selezionare il database in cui verrà eseguito lo script
- in [6]: eseguirlo
- in [7]: il risultato dell'esecuzione: la tabella [ARTICLES] è stata creata.
- in [8]: chiediamo di visualizzarne il contenuto
- in [9]: contenuto della tabella.
14.1.5. Il connettore ADO.NET di SQL Server Express
Il connettore ADO.NET è l'insieme di classi che consente 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. I sistemi di gestione di database (SGBD) MySQL5
14.2.1. Installazione
Il SGBD MySQL5 è disponibile all'indirizzo [http://dev.mysql.com/downloads/] :
- in [1]: selezionare la versione desiderata
- en [2]: scegli una versione per Windows
- in [3]: selezionare 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]: selezionare un'installazione tipica
- in [6]: una volta completata l'installazione, è possibile configurare il server MySQL5
- in [7]: scegli una configurazione standard, quella che solleva meno dubbi
- in [8]: il server MySQL5 sarà un servizio di 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 riuscire. Ci sono pochi modi per ripristinarla.
- in [10]: viene richiesta la configurazione del server
L'installazione di MySQL5 crea una cartella in [Start / Programmi ] :

È possibile utilizzare [MySQL Server Instance Config Wizard] per riconfigurare il server:
- in [3]: modifichiamo la password di root (qui root/root)
14.2.2. Avvia / Arresta MySQL5
Il server MySQL5 è stato installato come servizio Windows ad avvio automatico, con c.a.d. che si avvia non appena si avvia Windows. Questa modalità di funzionamento non è molto pratica. La modificheremo:
[Start / Pannello di controllo / Prestazioni e manutenzione / Strumenti di amministrazione / Servizi ] :
- in [1]: facciamo doppio clic su [Servizi]
- in [2]: vediamo che è presente un servizio chiamato [MySQL], che è in esecuzione [3] e che si avvia automaticamente [4].
Per modificare questa impostazione, facciamo doppio clic sul servizio [MySQL]:
- in [1]: impostare l'avvio del servizio su manuale
- in [2]: lo arrestiamo
- in [3]: la nuova configurazione del servizio viene convalidata
Per avviare e arrestare manualmente il servizio MySQL, è possibile creare due collegamenti:
- in [1]: il collegamento per avviare MySQL5
- in [2]: il collegamento per arrestarlo
14.2.3. Amministrazione clienti MySQL
Sul sito web di MySQL è possibile trovare i client di amministrazione per il SGBD:
- in [1]: selezionare [MySQL GUI Tools], che raggruppa vari client grafici per l'amministrazione e il funzionamento del SGBD
- in [2]: selezionare la versione Windows appropriata
- in [3]: viene scaricato un file .msi da eseguire
- in [4]: una volta completata l'installazione, compaiono nuovi collegamenti nella cartella [Menu Start / Programmi / mySQL].
Avviamo MySQL (tramite i collegamenti creati), quindi avviamo [MySQL Administrator] dal menu in alto:
- in [1]: inserisci la password dell'utente root (qui root)
- in [2]: hai effettuato l'accesso e MySQL è attivo
14.2.4. Creazione di un utente jpa e di un database jpa
Ora creiamo un database chiamato jpa e un utente con lo stesso nome. Per prima cosa l'utente:
- in [1]: selezionare [Amministrazione utenti]
- in [2]: clicca con il tasto destro nella sezione [Account utente] per creare un nuovo utente
- in [3]: il nome dell'utente è jpa e la sua password è jpa
- in [4]: confermare la creazione
- in [5]: l'utente [jpa] appare nella finestra [Account utente]
Il database ora:
- in [1]: selezionare l'opzione [Cataloghi]
- in [2]: clicca con il tasto destro sulla finestra [Schemi] per creare un nuovo schema (designando un database)
- in [3]: assegniamo un nome al nuovo diagramma
- in [4]: appare nella finestra [Schemi]
- in [5]: selezionare lo schema [jpa]
- in [6]: compaiono gli oggetti dello schema [jpa], comprese le tabelle. Non ce ne sono ancora. Fare clic con il tasto destro del mouse per crearne una. Lasciamo che sia il lettore a farlo.
Torniamo all'utente [jpa] e concediamogli i diritti completi sullo schema [jpa]:
- in [1], poi [2]: l'utente [jpa] è selezionato
- in [3]: selezionare la scheda [Privilegi dello schema]
- in [4]: selezionare lo schema [jpa]
- in [5]: assegneremo all'utente [jpa] i privilegi completi sullo schema [jpa]
- in [6]: confermare le modifiche apportate
Per verificare che l'utente [jpa] possa operare con lo schema [jpa], chiudiamo l'amministratore di MySQL. Lo riavviamo e questa volta ci colleghiamo con il nome [jpa/jpa]:
- it [1]: effettuiamo l'autenticazione (jpa/jpa)
- in [2]: la connessione è andata a buon fine e in [Schemata] vediamo gli schemi per i quali abbiamo i diritti. Vediamo lo schema [jpa].
Ora creeremo una tabella [ARTICLES] utilizzando uno script SQL.
- in [1]: utilizzare l'applicazione [MySQL Query Browser]
- in [2], [3], [4]: identificati (jpa / jpa / jpa)
- in [5]: aprire uno script SQL per l'esecuzione
- in [6]: selezionare il seguente script [schema-articles.sql]:
| /******************************************************************************/
/**** Tables ****/
/******************************************************************************/
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;
/* Check constraints definition */
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<>'');
/******************************************************************************/
/**** Unique Constraints ****/
/******************************************************************************/
ALTER TABLE ARTICLES ADD CONSTRAINT UNQ_NOM UNIQUE (NOM);
/******************************************************************************/
/**** Primary Keys ****/
/******************************************************************************/
ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
|
 |
- in [7]: lo script caricato
- in [8]: viene eseguito
- in [9]: la tabella [ARTICLES] è stata creata
14.2.5. Installazione del connettore ADO.NET d e MySQL5
Il connettore ADO.NET per 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 da 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 come segue:
- in [1], selezionare [Strumenti di amministrazione] (su XP Pro: menu Start / Pannello di controllo / Prestazioni e manutenzione / Strumenti di amministrazione)
- in [2], fare doppio clic su [Origini dati (ODBC)]
- in [3], selezionare la scheda [Driver ODBC]
- in [4], il driver ODBC di MySQL