Skip to content

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 ] :

Image

È 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