Microsoft SQL Server-Aspnet

Ed eccoci qui ad introdurre un argomento totalmente nuovo visto pero’ dalla parte dei Database Microsoft Sql Server, msql  ossia i grandi raccoglitori di dati con cui lavorano appunto i linguaggi di programmazione. Ma cosa sono i Database. Occore prendere familiarità quindi con le tabelle e i tipi di dati.

I database sono identificati univocamente da dei nomi , da delle tabelle con al loro interno dei dati messi in accordo con il tipo di dato che lo spazio (cella ) di quella tabella possiede. Facciamo un esempio , consideriamo di avere un tabella chiamata Laureati, quindi avremo come colonne

 

La colonna id che identifica il numero del laureato di tipo int

La colonna Nome e Cognome che identifica appunto il nominativo del laureato di tipo string

La Colonna Tipo di laurea che identifica la laurea conseguita di tipo string

La Colonna Votazione nella quale è messo il voto conseguito. di tipo int

 

Quindi in base a questi parametri la nostra tabella potrebbe essere popolata di questi valori

 

001 Michele Micheli Economia 110

002 Michela Magni Giurispudenza 110

003 Elisabeta Gregoraci Lettere 100

 

E cosi’ via a scendere , ma che dati sono questi tipi di dati? Beh di vario tipo, per i numeri esatti , cioe’ senza virgola si usano i seguenti

bigint numeri interi di grossi dimensioni

int numeri interi di medie dimensioni

smallint piccole dimensioni

etc. etc.

Per le definizione esatte dei range di valori si rimanda ai testi specifici, qui ci preme soltanto sottolineare che la differenza è sostanziale in quanto quando si ha a che fare con grossi database l’utilizzo di memoria deve essere ottimizzato, ossia non ci si puo’ permettere di utilizzare un tipo di dato inappropriato se pur funzionante.

Continuiamo la notra trattazione con i numeri approssimati che sono

i Float e i real come sempre funzionano entrambe cambia il range che per il real va da -3.4 * 10^38 a 3.4 * 10^38 e cosi’ via.

Per i tipi di dato che rappresentano le date abbiamo

datetime e smalldatetime per convenienza utilizzate sempre il primo e diciamo che vi troverete sempre bene…

Per i cartatteri abbiamo il solito char con varchar e maxchar, mentre per il testo abbiamo abbiamo appunto la variabile text.

 

Queste tabelle pero’ possono essere messe in unione le une con le altre , questo tipo di correlazione fra tabelle che mette in dipendenza i dati delle une con quelli delle altre si chiama join, ma anche per questo rimandiamo ad una trattazione piu’ specifica che potrete trovare anche nelle nostre guide.

 

Le Query del Database

 

Ora che abbiamo un’idea molto rudimentale di cosa sono i Database, vediamo come questi interagiscono con il linguaggio C# e il Visual Web Developer.

In verità tutti i database interagiscono con i linguaggi attraverso un meccanismo chiamato di Query che volgarmente significa interrogazioni.

Select

Incominciamo con la prima operazione , la piu’ semplice ossia la selezione la cui sintassi è

SELECT <nome colonna> From <nome tabella>

la cui comprensione è abbastanza immediata, se per esempio facevamo

 

SELECT Votazioni From Laureati

Ottenevamo i seguenti risultati

110

110

100

 

Facciamo un ulteriore passo introduciamo la clausola Where la cui sintassi è

 

SELECT <nome colonna> From <nome tabella> WHERE <nome colonna> <operatore> <valore>

 

Dove l’operatore supportati sono molteplici

=, <>, >,<,>= ,=<, BETWEEN, LIKE, IN

E siamo cmq sicuri che ne abbiamo dimenticati altri.

 

Altri tipi di Query sono le INSERT

per l’inserimento dei dati nel database

UPDATE

Per eseguire l’aggiornamento di dati gia’ presenti nel Database

Delete

Per cancellare una riga di dati presenti nel Database.

 

Ripetiamo che questa è una trattazione veramente superficiale del vasto mondo dei Database Sql Server nel particolare ma di tutto SQL in generale.

Tanto per dare un’idea per una trattazine completa occorrono dei libri.

 

Aspnet e Microsoft SQL Server come collegarli

Incominciamo adesso a vedere come interragiscono fra di loro Database e Visual Web Developer.

Primo passo VWD rappresenta un ottimo server quando è in funzione ma non un Database quindi vi occorre un Database , andate sul sito di Microsoft e scaricatevi SQL Server .

Creiamo quindi adesso una tabella chimata ToDo che avra’ al suo interno le seguenti Colonne

  • ToDold che rappresenterà l’identificatore di riga della tabella, partirà da 1 e verra’ incrementato ogni volta dello stesso valore.
  • Name che rappresenterà come verrano chiamati gli utenti
  • Complete che rappresenterà se le cose da fare sono state completate o meno e per questo gli attribuiremo un valore bolenano

Quindi avviamo il Visual Web Developer e avviamo il nostro progetto Personal Portal come ormai siamo capacissimi di fare.

 

Quindi andiamo come sempre su Esplora Soluzione, selezioniamo C:\…\percorso url sito

e selezioniamo aggiungi nuovo elemento nella finestra che si apre selezioniamo Database Sql Server e nel campo nome mettiamo PPDatabase e aggiungi alle successive finestre che si aprono clicchiamo si, in pratica chiede di mettere il nuovo file nella directory App_Data, se tutto è andato a buon fine ci dovremmo ritrovare ad avere la seguente situazione nella Finestra esplora soluzioni

Microsoft SQL Server-1

Vediamo ora come popolare i campi di tale tabella, andiamo quindi sempre sulla destra nella finestra Esplora Database, se non è stata attivata procedete nel seguente modo o andate su Visuali e cliccate su Esplora Database oppure Direttamente da Tastiera digitate

CTRL + ALT + S

Quindi adess che siete in esplora Database espandete cliccando sul + di PPDDatabase.mdf e vi aprira’ tutta una serie di sottocartelle fra le quali Tabella , la selezionate e tasto destro del mouse cliccate su aggiungi nuova tabella e completatela in modo da ottenere il seguente risultato

 Microsoft SQL Server-2

Selezione la Colonna ToDoId e andate sulla finestra Proprieta colonna e scorretela fin quando non trovate

Microsoft SQL Server-Aspnet

Proprietà Colonne da qui Specifica identità ponetelo su si automaticamente incremento identità e inizio identità si posizionerà automaticamente su 1, questo vuole dire che ogni qual volta verrà effettuato un inserimento di dati nel Database, il campo corrispettivo a questa colonna verrà incrementato in modo automatico da solo di uno, poi in base alle vostre esigenze imparerte a incrementarlo come riterrete piu’ opportuno.

A questo punto non ci rimane che assegnare un nome al tutto quindi con nome colonna selezionato tasto destro del mouse e clicchiamo su Proprietà sulla relativa finestrella di destra chiamata proprietà diamo un nome al nostro oggetto in corrispondenza della casella (Nome) e lo chiamiamo appunto ToDo a questo punto con la tabella selezionata tasto destro e digitate Save ToDo, la tabella è definitivamente salvata.

Ora che abbiamo creato la tabella vediamo come dobbiamo farla per popolarla, ossia il VWD ha incorporato una funzione che ci permette di inserire i dati direttamente nel database senza ricorrere ad altri programmi di ausilio, vediamo come fare.

Da Esplora Database selezioniamo la tabella ToDo appena creata , tasta destro del mouse e clicchiamo questa volta su mostra dati tabella

Interrogazioni a Database Microsoft SQL Server da Aspnet

Adesso che abbiamo imparato a creare le tabelle dei database e sappiamo anche come popolarle vediamo come potere estrapolare i dati in esse contenute attraverso il Visual Web Developer.

 

Andiamo nuovamente su Esplora Database e da qui selezioniamo la tabella ToDo come sempre tasto destro del Mouse e questa volta digitiamo Nuova Query e Aggiungiamo la tabella ToDo che oltretutto per il momento è anche l’unica che abbiamo creato.

Il prim passo è stato raggiunto adesso vediamo come realizzare praticamente l’istruzione Select. Dal riquadro che si è creato selezioniamo i campi ToDold, Name e Complete , che è un po’ come selezionare (tutte le colonne)

 

A questo punto andate su Progettazione Query e dopo ancora su esegui SQL oppure digitate direttamente CTRL R se tutto è andato esattamente vi apparirà una nuova tabella che sarà il risultato della query che avete eseguito, il risultato dovrebbe essere grosso modo il seguente.

 

 

Microsoft SQL Server-5

con le opportune modifiche dovute al caso, vediamo adesso anche nello specifico come aggiungere anche la clausola Where a questo sistema. Nel Pannello Sql dove c’e’ scritto SELECT etc. etc. digitare e ottenere la seguente scritta

SELECT ToDoId, Name, Complete

FROM ToDo

Where Complete ='True'

verifichiamo la sintassi del SQL inserito andando su Progettazione Query e dal menu prendiamo la seconda voce ossia Verifica Sintassi SQL.

Se la sintassi è corretta possiamo a questo punto digitare CTRL + R e verificare il risultato. Se tutto è andato nel verso giusto sarà visualizzata solamente la riga contraddistanza dalla colonna avente come ToDoId pari a 2.