Glossario asp,sql

870 views

Published on

Manuale per la seconda prova dell'esame di stato di Informatica

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
870
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Glossario asp,sql

  1. 1. Glossario ASP Tag del linguaggio VBScript <% - Apertura %> - Chiusura Impostazione del linguaggio VBScript per l’interpretazione dei comandi degli script <% Language=VBSCRIPT %> Commenti <% ‘ <Commento> %> - I commenti sono indicati con l’apostrofo e valgono esclusivamente per la riga corrente. Variabili Dichiarazione e assegnazione Dim <variabile> - Dichiarazione esplicita <variabile> = <valore> - Assegnazione Tipi di dato Prefisso Tipo variabile I Intero Sng Reale – semplice precisione Dbl Reale – doppia precisione Str Stringa Dt Data Bol Booleana Cur Monetario Obj Oggetto Costanti Const <variabile> <variabile> = <valore> Array Dim <nome_array>(<dimensione>) - Dichiarazione di un array dove <dimensione> può essere rappresentato da un numero o da una variabile intera. <nome_array> = Array (<var1>,<var2>,…,<varN>)> - Assegnazione rapida dei valori agli elementi di un array Stringhe. <variabile_stringa> = “stringa” - Le stringhe sono delimitate dai doppi apici 1
  2. 2. Operatori matematici Operatori Descrizione Operatori matematici <variabile> = <valore> Assegnazione <variabile> = <val1> + <val2> Addizione <variabile> = <val1> - <val2> Sottrazione <variabile> = <val1> / <val2> Divisione <variabile> = <val1> * <val2> Moltiplicazione <variabile> = <val1> mod <val2> Resto della divisione tra interi <variabile> = <val1> ^ <val2> Elevamento a potenza Concatenazione <variabile> = <str1> & <str2> Concatenazione di più stringhe. E’ importante l’ordine Operatori di confronto (dentro a delle condizioni) <val1> = <val2> “Vero” se sono uguali <val1> <> <val2> “Vero” se sono diversi <val1> > <val2> “Vero” se <val1> è maggiore di <val2> <val1> < <val2> “Vero” se <val1> è minore di <val2> <val1> >= <val2> “Vero” se <val1> è maggiore-uguale di <val2> <val1> <= <val2> “Vero” se <val1> è minore-uguale di <val2> Operatori logici <val1> And <val2> “Vero” se entrambi vere <val1> Or <val2> “Vero” se almeno una è vera Not <val1> “Vero” se <val1> è falsa <val1> Xor <val2> “Vero” se diversi Programmazione strutturata Strutture di controllo e iterazione Struttura Descrizione Logica condizionale If <condizione> Then <blocco di codice1> [ElseIf <condizione] [<blocco di codice2>] [Else] [<blocco di codice3>] End If Istruzione If…Then…Else: Se <condizione> è vera viene eseguito il blocco di codice 1, altrimenti, se è prevista un’elaborazione alternativa, esegue il blocco di codice 2. 2
  3. 3. Select Case <variabile> Case <val1> <blocco di codice1> … [Case Else] [<blocco di codiceN>] End Select Istruzione Select Case: Viene eseguito il blocco di codice corrispondente al valore uguale a <variabile>, altrimenti viene eseguito il blocco di codice alternativo (se previsto) Logica ciclica Do While <condizione> <blocco di codice> Loop Istruzione Do While…Loop: Controlla prima di eseguire il blocco di codice. Itera per vero Do <blocco di codice> Loop While <condizione> Istruzione Do…Loop While: Esegue il blocco di codice prima di controllare. Itera per vero Do Until <condizione> <blocco di codice> Loop Istruzione Do Until…Loop: Controlla prima di eseguire il blocco di codice. Itera per falso Do <blocco di codice> Loop Until <condizione> Istruzione Do…Loop Until: Esegue il blocco di codice prima di controllare. Itera per falso For <cont>=<inizio> To <fine> [<step>] <blocco di codice> Next Istruzione For…Next: Dato un contatore inizializzato a <inizio>, la struttura itera fino a quando questo non raggiunge il valore finale <fine>. Lo <step> di default è 1. Foreach <var> in <collection> <blocco di codice> Next <collection> = insieme di coppie <nome> <valore> Istruzione Foreach: Fa variare <var> nell'insieme dei nomi di <collection> Foreach <var> in <insieme> <blocco di codice> Next <insieme> = insieme di valori Istruzione Foreach: Fa variare <var> nell'insieme dei valori di <insieme> Subroutine e funzioni Struttura Descrizione Subroutine Sub <nome> [(<elenco_argomenti>)] <blocco di codice> End Sub Effettuano delle elaborazioni che non implicano la restituzione di un valore. Possono essere passati degli argomenti alle subroutine nelle parentesi Funzioni Function <nome> [(<elenco_argomenti>)] <blocco di codice> <nome> = <valore> [ Exit Function ] End Function Effettuano delle elaborazioni che implicano la restituzione di un valore, tramite l’assegnazione di un valore al nome della funzione. Si può uscire dalla funzione anticipatamente con l’istruzione Exit Function 3
  4. 4. La chiamata ad una subroutine o ad una funzione si può effettuare nel seguente modo: <nome_sub> [(<elenco_argomenti>)] - Chiamata ad una subroutine <valore> = <nome_funzione> [(<elenco_argomenti>)] - Chiamata ad una funzione Collegamento ad un database Collegamento al database Istruzione Descrizione Set <var_conn> = Server.CreateObject(“ADODB.Connection”) Inizializzazione della variabile di connessione Database SQLServer: <var_conn>.ConnectionString = "provider=SQLNCLI10;server=.sqlexpress;Initial Catalog=<nomeDB>;Persist Security Info=True;User ID=<idutente>;Password=<password>" Inizializzazione della stringa di connessione <var_conn>.Open Apertura della connessione <var_conn>.Close Chiusura della connessione Lettura dal database Istruzione Descrizione Set <var_record> = Server.CreateObject(“ADODB.RecordSet”) Inizializzazione della variabile di lettura <var_record >.Open <query_sql>, <var_conn> Apertura <var_record>.Close Chiusura <var_record> (“<nome_campo>”) Restituisce il valore del campo <nome_campo> del record corrente. <var_record>.MoveNext L’oggetto si sposta sul record successivo <var_record>.MovePrevious L’oggetto si sposta sul record precedente <var_record>.MoveFirst L’oggetto si sposta sul primo record <var_record>.MoveLast L’oggetto si sposta sull’ultimo record <var_record>.EOF “Vero” se l’oggetto è arrivato a fine tabella. <var_record>.BOF “Vero” se l’oggetto è arrivato a inizio tabella. 4
  5. 5. Modifica del database Istruzione Descrizione <var_conn>.Execute <stringa_sql> Esecuzione di comandi SQL (cancellazione, modifica e inserimento) Metodi e funzioni frequentemente utilizzati Metodo o funzione Descrizione Oggetto Response Response.Write (<argomento>) Metodo che invia al browser il suo argomento. L’argomento può contenere testo o tag html, interpretabili dal browser <%= <argomento> %> Analogo funzionamento del metodo Response.Write Response.End Termina l’esecuzione dello script. Tutto quello che segue (sia script che HTML) viene ignorato Response.Redirect “<indirizzo_pagina>” Reindirizza a <indirizzo_pagina> (indirizzo della pagina chiuso fra doppi apici) Response.Cookies (“<nome_var>”) = <valore> Salva <valore> in un cookie alla voce <nome_var> Response.Cookies (“<nome_var>”).Expires = Date() + <valore_intero> Impostazione dell’ultimo giorno di validità della voce <nome_var> nel cookie Oggetto Request Request.QueryString (“<nome_variabile>”) Recupero dei dati di un form con “Method” impostato su “get”. Il nome della variabile è chiuso tra doppi apici. Request.Form (“<nome_variabile>”) Recupero dei dati di un form con “Method” impostato su “post”. Il nome della variabile è chiuso tra doppi apici. Request.Cookies (“<nome_variabile>”) Recupero del valore della voce <nome_variabile> da un cookie. Esso può essere assegnato ad una variabile Oggetto Session Session.SessionID Identificatore numerico creato che viene utilizzato per identificare in modo univoco una Session appartenente ad un certo utente 5
  6. 6. Session (“<nome_variabile>”) = <valore> Assegnazione di un valore ad una variabile di sessione <variabile> = Session (“<nome_variabile>”) Recupero del valore di una variabile di sessione ed assegnazione Session.Timeout = <numero_minuti> Impostazione di un numero di minuti oltre il quale la sessione inattiva viene cancellata Session.Abandon Deallocazione dell’oggetto Session Oggetto Server Set <oggetto> = Server.CreateObject (<nome_classe>.<nome_componente>) Crea un istanza di un componente server <path> = Server.MapPath (“<nome_file>”) Restituisce il percorso completo del file Determinazione del tipo di variabile IsNumeric(<variabile>) “Vero” se <variabile> è un numero IsArray(<variabile>) “Vero” se <variabile> è un array IsDate(<variabile>) “Vero” se <variabile> è una data IsNull(<variabile>) “Vero” se <variabile> è nullo IsEmpty(<variabile>) “Vero” se <variabile> è vuoto IsObject(<variabile>) “Vero” se <variabile> è un oggetto Data e ora Date() Restituisce la data corrente Time() Restituisce l’ora corrente Now() Restituisce la data e l’ora corrente Stringhe UCase(<stringa>) Converte la stringa in maiuscolo LCase(<stringa>) Converte la stringa in minuscolo Len(<stringa>) Numero dei caratteri della stringa Mid(<stringa>,<inizio>,<n_carat>) Restituisce una stringa di <n_carat > caratteri dalla posizione <inizio> della stringa Split(<stringa>,<separatore>) Suddivide in un array di stringhe la stringa in input con il criterio di separazione dato dal carattere <separatore> Join(<array_stringa>,<separatore>) Unisce in una sola stringa una serie di stringhe separandole con <separatore> LBound(<array>) Restituisce l’indice del primo elemento UBound(<array>) Restituisce l’indice dell’ultimo elemento Glossario SQL 6
  7. 7. Tipi di dati Tipo di dato Intervallo Archiviazione Stringhe (devono essere chiuse tra singoli apici) o caratteri CHAR (<N>) Stringa a lunghezza fissa non Unicode con una lunghezza di <n> byte. <n> deve essere un valore compreso tra 1 e 8.000 <n> byte VARCHAR (<N> | MAX) Stringa a lunghezza variabile non Unicode con una lunghezza massima di <n> byte. <n> può essere un valore compreso tra 1 e 8.000. “max” indica che le dimensioni massime dello spazio di archiviazione sono 2^31-1 byte Le dimensioni di archiviazione sono pari all'effettiva lunghezza dei dati immessi più 2 byte. Numerici interi BIT 1, 0 o NULL compatta otto colonne di 1 bit in 1 byte BIGINT da –2^63 (-9,223,372,036,854,775,808) a 2^63-1 (9,223,372,036,854,775,807) 8 byte INT da –2^31 (-2,147,483,648) a 2^31-1 (2,147,483,647) 4 byte SMALLINT da –2^15 (-32,768) a 2^15-1 (32,767) 2 byte TINYINT Da 0 a 255 1 byte Numerici reali REAL Da -3,40E+38 a -1,18E-38, 0 e da 1,18E-38 a 3,40E+38 4 byte Valori monetari o valutari MONEY Da -922.337.203.685.477,5808 a 922.337.203.685.477,5807 8 byte SMALLMONEY Da -214.748,3648 a 214.748,3647 4 byte Tipo di dato Intervallo Accuratezza Data e ora del giorno (devono essere chiuse tra singoli apici) DATETIME 1 gennaio 1753 - 31 dicembre 9999 3,33 millisecondi DATE 1 gennaio 1900 - 6 giugno 2079 1 giorno Definizione database e tabelle 7
  8. 8. Sintassi creazione database CREATE DATABASE <nome_database> Sintassi creazione tabelle CREATE TABLE <nome_tabella> ( <nome_campo1> <tipo_di_dato> [IDENTITY] [PRIMARY KEY] [DEFAULT <valore_default>] [NOT NULL | NULL] <nome_campo2> <tipo_di_dato> [IDENTITY] [PRIMARY KEY] [DEFAULT <valore_default>] [NOT NULL | NULL] […] [PRIMARY KEY (<nome_campo> [,…] ) ] [FOREIGN KEY (<nome_campo> [,…] ) REFERENCES <tabella> (<nome_campo> [,…] ] [ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] [ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] ); Sintassi cancellazione tabelle DROP TABLE <nome_tabella> Funzioni che operano sulle date Funzione Descrizione Oggetto Response getdate() Restituisce la data e l’ora di sistema correnti nel formato datetime datepart (<parte_della_data>, date) Restituisce la data o l’ora secondo un formato dato da <parte_della_data> i cui valori sono specificati nella seguente tabella: Parte della data Abbreviazioni year yy, yyyy quarter qq, q month mm, m dayofyear dy, y day dd, d week wk, ww weekday dw hour hh minute mi, n second ss, s millisecond ms day() Analoga di datepart(dd, date) month() Analoga di datepart(mm, date) 8
  9. 9. year() Analoga di datepart(yy, date) L’istruzione SELECT Sintassi SELECT [DISTINCT] <lista_elementi_selezione>[*] FROM <lista_riferimenti_tabella> [ WHERE <espressione_condizionale> ] [ GROUP BY <lista_colonne> ] [ HAVING <espressione_condizionale> ] [ ORDER BY <lista_colonne> ] Ordine delle priorità di esecuzione dei comandi 1. avviene l’esecuzione della join, se essa è stata inserita; 2. avviene la selezione delle tuple secondo la clausola WHERE, se è presente; 3. raggruppamento in base ai campi specificati tramite GROUP BY; 4. applicazione di una o più funzioni aggregate ai gruppi costituiti nel passo precedente, ottenendo un insieme di tuple con i valori dei campi di raggruppamento ed i rispettivi valori risultato dell’applicazione funzioni aggregate; 5. eventuale selezione delle tuple che soddisfano la condizione presente dopo la clausola HAVING. Elementi di condizione Operatore Descrizione Operatori di confronto Sono i medesimi utilizzati per il linguaggio VBScript Operatori logici <val1> And (oppure &&) <val2> “Vero” se entrambi vere <val1> Or (oppure ||) <val2> “Vero” se almeno una è vera Not (oppure !) <val1> “Vero” se <val1> è falsa Altri operatori <op> BETWEEN <op1> AND <op2> “Vero” se <op> è compreso tra <op1> e <op2> <op> [NOT] IN (<elenco_val> | <query>) “Vero” se <op> è presente in un elenco valori o nel risultato di una query <espressione> LIKE <pattern> “Vero” se <espressione> è una stringa che si conforma al <pattern> (o modello) scelto <espressione> IS [NOT] NULL “Vero” se <espressione> vale NULL [NOT] EXISTS <query> “Vero” se la query fornisce una tabella non vuota 9
  10. 10. N.B.: EXISTS, ALL, ANY si applicano ad insiemi costanti o a “subselect”. Funzioni aggregate Funzione Descrizione AVG(<nome_campo>) Rende la media aritmetica di tutti i valori di <nome_campo> COUNT(<nome_campo> | *) Conta i record MAX(<nome_campo>) Rende il valore massimo fra tutti i valori di <nome_campo> MIN(<nome_campo>) Rende il valore minimo fra tutti i valori di <nome_campo> SUM(<nome_campo_numerico>) Rende la somma totale N.B.: le funzioni aggregate restituiscono un caso molto particolare di tabella, ovvero un singolo valore scalare. E’ necessaria la clausola GROUP BY per le i campi non derivanti da funzioni aggregate. Congiunzioni JOIN SELECT [ ALL | DISTINCT ] <lista_elementi_selezione> FROM <lista_riferimenti_tabella> { INNER | LEFT | RIGHT } JOIN <nome_tabella> [ ON <espressione_condizionale> ] Congiunzione Descrizione INNER Si combinano in una tupla comune i record di due tabelle che soddisfano <espressione_condizionale> LEFT Tutti i record del lato sinistro dell’operazione LEFT JOIN vengono aggiunti alle tuple risultato con i valori corrispondenti dell’altra tabella se <espressione_condizionale> è verificata, altrimenti con NULL se non è verificata RIGHT Tutti i record del lato destro dell’operazione LEFT JOIN vengono aggiunti alle tuple risultato con i valori corrispondenti dell’altra tabella se <espressione_condizionale> è verificata, altrimenti con NULL se non è verificata Clausole Clausola Descrizione GROUP BY <lista_colonne> Serve per raggruppare e per elaborare in modo complessivo diverse righe che nella tabella origine hanno valori uguali in una o più colonne HAVING <condizione_gruppo> Consente di porre una condizione su una funzione di gruppo. Può essere usata correttamente solo in combinazione con la clausola GROUP BY 10
  11. 11. ORDER BY <attrib1> [ASC | DESC] [,…] Ordina la tabella risultato secondo uno o più campi separati da virgole, in modo crescente ASC (default) o decrescente DESC Le istruzioni INSERT, UPDATE e DELETE Sintassi dell’istruzione INSERT INSERT INTO <nome_tabella> [ (<elenco_campi>) ] { VALUES (<elenco_valori>) | SELECT } <elenco_valori> e' l'elenco dei valori che verranno assegnati ai campi della tabella, nell'ordine e numero specificati da <elenco_campi> o in quello della definizione della tabella (se <elenco_campi> non viene specificato). E' un errore non inserire in <elenco_campi> un campo che non abbia un valore di default e non possa assumere il valore NULL. I valori possono essere un'espressione scalare del tipo appropriato per il campo o le keyword DEFAULT o NULL, se il campo prevede un valore di default o ammette il valore NULL. Sintassi dell’istruzione UPDATE UPDATE <nome_tabella> SET <nome_campo> = <espressione_scalare> [,…] [ WHERE <espressione_condizionale> ] Si noti che <espressione_scalare> può anche essere il risultato di una query scalare, cioè una query che restituisce una sola riga e una sola colonna. Sintassi dell’istruzione DELETE DELETE FROM <nome_tabella> [ WHERE <espressione_condizionale> ] Elimina da una tabella tutte le righe che soddisfano <espressione_condizionale>. Se WHERE non viene specificata, vengono cancellate tutte le righe della tabella. 11

×