Creare un database

di Microsoft

Scarica il PDF

Questo è il passaggio 2 di un'esercitazione gratuita sull'applicazione "NerdDinner" che illustra come creare un'applicazione Web di piccole dimensioni, ma completa, usando ASP.NET MVC 1.

Il passaggio 2 illustra i passaggi per creare il database contenente tutti i dati di cena e RSVP per l'applicazione NerdDinner.

Se si usa ASP.NET MVC 3, è consigliabile seguire le esercitazioni Introduzione Con MVC 3 o MVC Music Store.

NerdDinner Passaggio 2: Creazione del database

Verrà usato un database per archiviare tutti i dati Dinner e RSVP per l'applicazione NerdDinner.

La procedura seguente illustra la creazione del database usando l'edizione gratuita SQL Server Express (che è possibile installare facilmente tramite V2 del Installazione guidata piattaforma Web Microsoft). Tutto il codice che verrà scritto funziona sia con SQL Server Express che con il SQL Server completo.

Creazione di un nuovo database SQL Server Express

Si inizierà facendo clic con il pulsante destro del mouse sul progetto Web e quindi scegliendo il comando di menu Aggiungi nuovo> elemento :

Screenshot della finestra di dialogo Esplora soluzioni. L'opzione Aggiungi è selezionata e viene evidenziato Nuovo elemento.

Verrà visualizzata la finestra di dialogo "Aggiungi nuovo elemento" di Visual Studio. Verrà applicato un filtro in base alla categoria "Dati" e si selezionerà il modello di elemento "SQL Server Database":

Screenshot della finestra di dialogo Aggiungi nuovo elemento di Visual Studio. Il database del server Q L è evidenziato. I dati sono evidenziati.

Il database SQL Server Express verrà denominato "NerdDinner.mdf" e si raggiungerà ok. Visual Studio chiederà quindi se si vuole aggiungere questo file alla directory \App_Data (che è già una directory già configurata con ACL di sicurezza di lettura e scrittura):

Screenshot della finestra di dialogo di Microsoft Visual Studio. Sì è evidenziato.

Fare clic su "Sì" e il nuovo database verrà creato e aggiunto al Esplora soluzioni:

Screenshot dell'albero di spostamento Esplora soluzioni. Nerd Dinner dot m d f è evidenziato e selezionato.

Creazione di tabelle all'interno del database

È ora disponibile un nuovo database vuoto. Verranno ora aggiunte alcune tabelle.

A tale scopo, si passerà alla finestra della scheda "Esplora server" in Visual Studio, che consente di gestire database e server. SQL Server Express database archiviati nella cartella \App_Data dell'applicazione verranno visualizzati automaticamente all'interno di Esplora server. Facoltativamente, è possibile usare l'icona "Connetti al database" nella parte superiore della finestra "Esplora server" per aggiungere altri SQL Server database (sia locali che remoti) all'elenco:

Screenshot dell'albero di spostamento di Esplora server. Le connessioni dati vengono espanse e La cena nerd punto m d f è evidenziata.

Verranno aggiunte due tabelle al database NerdDinner, una per archiviare le cene e l'altra per tenere traccia delle accettazione RSVP. È possibile creare nuove tabelle facendo clic con il pulsante destro del mouse sulla cartella "Tabelle" all'interno del database e scegliendo il comando di menu "Aggiungi nuova tabella":

Screenshot dell'albero di spostamento di Esplora server. Le tabelle vengono espanse ed evidenziate. L'opzione Aggiungi nuova tabella è evidenziata.

Verrà aperta una finestra di progettazione tabelle che consente di configurare lo schema della tabella. Per la tabella "Dinners" aggiungeremo 10 colonne di dati:

Screenshot della finestra di dialogo Cena nerd. Viene visualizzato lo schema della tabella.

Si vuole che la colonna "DinnerID" sia una chiave primaria univoca per la tabella. È possibile configurare questa impostazione facendo clic con il pulsante destro del mouse sulla colonna "DinnerID" e scegliendo la voce di menu "Imposta chiave primaria":

Screenshot delle voci di menu Id cena. La voce di menu Imposta chiave primaria è evidenziata.

Oltre a rendere DinnerID una chiave primaria, è necessario configurarla anche come colonna "identity" il cui valore viene incrementato automaticamente man mano che vengono aggiunte nuove righe di dati alla tabella (ovvero la prima riga di Dinner inserita avrà un Valore DinnerID pari a 1, la seconda riga inserita avrà un Valore DinnerID pari a 2 e così via).

A tale scopo, selezionare la colonna "DinnerID" e quindi usare l'editor "Proprietà colonna" per impostare la proprietà "(Is Identity)" sulla colonna su "Sì". Verranno usate le impostazioni predefinite dell'identità standard (a partire da 1 e incrementare 1 in ogni nuova riga dinner):

Screenshot della scheda Proprietà colonna. Specifica identità evidenziata.

Si salverà quindi la tabella digitando CTRL-S o usando il comando di menu Salva file>. Verrà richiesto di denominare la tabella. Lo chiameremo "Dinners":

Screenshot della finestra di dialogo Scegli nome. Le cene sono scritte nella casella Immettere un nome per la tabella.

La nuova tabella Dinners verrà quindi visualizzata all'interno del database in Esplora server.

Ripeteremo quindi i passaggi precedenti e creeremo una tabella "RSVP". Questa tabella con 3 colonne. Verrà configurata la colonna RsvpID come chiave primaria e verrà impostata anche una colonna Identity:

Screenshot della finestra di dialogo Cena nerd. R S V P I D è evidenziato nella categoria Nome colonna.

Lo salvaremo e assegnargli il nome "RSVP".

Configurazione di una relazione di chiave esterna tra tabelle

Sono ora disponibili due tabelle all'interno del database. L'ultimo passaggio di progettazione dello schema consiste nel configurare una relazione "uno-a-molti" tra queste due tabelle, in modo da poter associare ogni riga Dinner a zero o più righe RSVP applicabili. Questa operazione verrà eseguita configurando la colonna "DinnerID" della tabella RSVP in modo da avere una relazione di chiave esterna con la colonna "DinnerID" nella tabella "Dinners".

A tale scopo, si aprirà la tabella RSVP all'interno di Progettazione tabelle facendo doppio clic su di essa in Esplora server. Selezionare quindi la colonna "DinnerID" all'interno, fare clic con il pulsante destro del mouse e scegliere "Relazioni..." comando di menu di scelta rapida:

Screenshot delle voci di menu Dinner I D. Le relazioni sono evidenziate.

Verrà visualizzata una finestra di dialogo che è possibile usare per configurare le relazioni tra le tabelle:

Screenshot della finestra di dialogo Relazioni chiave esterna.

Fare clic sul pulsante "Aggiungi" per aggiungere una nuova relazione alla finestra di dialogo. Dopo aver aggiunto una relazione, espanderemo il nodo di visualizzazione albero "Tabelle e specifica colonna" nella griglia delle proprietà a destra della finestra di dialogo e quindi fare clic su "..." pulsante a destra di esso:

Screenshot della finestra di dialogo Relazioni chiave esterna. Le specifiche delle tabelle e delle colonne sono evidenziate. Una freccia punta al pulsante elipses a destra.

Fare clic su "..." verrà visualizzata un'altra finestra di dialogo che consente di specificare quali tabelle e colonne sono coinvolte nella relazione, nonché consentire di denominare la relazione.

La tabella chiave primaria verrà modificata in "Dinners" e verrà selezionata la colonna "DinnerID" nella tabella Dinners come chiave primaria. La tabella RSVP sarà la tabella chiave esterna e rsvp. La colonna DinnerID verrà associata come chiave esterna:

Screenshot della finestra di dialogo Tabelle e colonne. La tabella chiave primaria e la tabella chiave esterna sono evidenziate.

Ora ogni riga nella tabella RSVP verrà associata a una riga nella tabella Dinner. SQL Server manterrà l'integrità referenziale per noi e impedisce di aggiungere una nuova riga RSVP se non punta a una riga dinner valida. Impedisce inoltre di eliminare una riga Dinner se vi sono ancora righe RSVP che vi fanno riferimento.

Aggiunta di dati alle tabelle

A questo punto, aggiungere alcuni dati di esempio alla tabella Dinners. È possibile aggiungere dati a una tabella facendo clic con il pulsante destro del mouse su di esso all'interno di Esplora server e scegliendo il comando "Mostra dati tabella":

Screenshot di Esplora server. Mostra dati tabella evidenziati.

Verranno aggiunte alcune righe di dati Dinner che è possibile usare in un secondo momento quando si inizia a implementare l'applicazione:

Screenshot dei dati della cena in Microsoft Visual Studio.

passaggio successivo

La creazione del database è stata completata. È ora possibile creare classi di modelli che è possibile usare per eseguire query e aggiornarla.