La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Corso base Lorenzo Braidi Formazione e consulenza informatica

Presentazioni simili


Presentazione sul tema: "Corso base Lorenzo Braidi Formazione e consulenza informatica"— Transcript della presentazione:

1 Corso base Lorenzo Braidi Formazione e consulenza informatica

2 Agenda Installazione di SQL Server Installazione di SQL Server I database relazionali I database relazionali Mictosoft SQL Server 2000 Mictosoft SQL Server 2000 Il linguaggio Transact SQL Il linguaggio Transact SQL

3 Parte Prima Installazione di SQL Server

4 Versioni Microsoft SQL Server 2000 Microsoft SQL Server 2000 Enterprise edition Enterprise edition Standard edition Standard edition Personal edition Personal edition Developer edition Developer edition Microsoft SQL Server 7.0 Microsoft SQL Server 7.0 Enterprise edition Enterprise edition Standard edition Standard edition Desktop edition Desktop edition Developer edition Developer edition

5 Componenti Database server Database server OLAP server (o Analysis service) OLAP server (o Analysis service) English query English query

6 Setup e upgrade

7 Parte Seconda I database relazionali

8 Indipendenza dei dati: La grande differenza tra il modello relazionale e quelli reticolari e gerarchici Indipendenza dei dati: La grande differenza tra il modello relazionale e quelli reticolari e gerarchici Modello logico Loperatore conosce la struttura logica dei dati Modello logico Loperatore conosce la struttura logica dei dati Modello fisico Non è necessario sapere dove i dati risiedano per accedervi Modello fisico Non è necessario sapere dove i dati risiedano per accedervi

9 I database relazionali Tabelle: E la rappresentazione del concetto matematico di Insieme Tabelle: E la rappresentazione del concetto matematico di Insieme Tupla E lelemento base di una tabella Tupla E lelemento base di una tabella Campo E una colonna di un elemento Campo E una colonna di un elemento

10 I database relazionali Relazioni: E la rappresentazione del concetto matematico di Prodotto di insiemi Relazioni: E la rappresentazione del concetto matematico di Prodotto di insiemi Prodotto di domini A= {1,2,3} B={h,k} A x B={(1,h),(2,h),(3,h),(1,k),(2,k),(3,k)} Prodotto di domini A= {1,2,3} B={h,k} A x B={(1,h),(2,h),(3,h),(1,k),(2,k),(3,k)} Univocità della tupla Non esistono dati dupplicati in un insieme Univocità della tupla Non esistono dati dupplicati in un insieme

11 I database relazionali Valore null: Valore null: Valore sconosciuto Valore sconosciuto Valore inesistente Valore inesistente Senza informazione Senza informazione Città Indirizzo prefettura Roma Via Quattro Novembre FirenzeNull TivoliNull PratoNull

12 I database relazionali Vincoli di integrità: Vincoli di integrità: Extrarelazionali Relazione tra i dati di due tabelle Extrarelazionali Relazione tra i dati di due tabelle Intrarelazionali Relazioni interne ad una tabella o ad una tupla Intrarelazionali Relazioni interne ad una tabella o ad una tupla Vincoli di dominio ( voto >= 18 ) and ( voto = 18 ) and ( voto <= 30 ) Vincoli di tupla ( not ( lode =vero ) ) or ( voto = 30 ) Vincoli di tupla ( not ( lode =vero ) ) or ( voto = 30 )

13 I database relazionali Chiavi: Chiavi: Identifica lunivocità di una tupla Non possono esistere tuple doppie in una stessa tabella Identifica lunivocità di una tupla Non possono esistere tuple doppie in una stessa tabella Obbligatoria per relazionare la tabella Non è possibile mettere in relazione uninformazione di una tabella se ad essa non è asociata una chiave Obbligatoria per relazionare la tabella Non è possibile mettere in relazione uninformazione di una tabella se ad essa non è asociata una chiave

14 I database relazionali … in pratica …

15 Parte Terza Microsoft SQL Server 2000

16 Strumenti di base Cosè un database? Cosè un database? Cosè un DBMS? Cosè un DBMS?

17 Strumenti di base Configurazione di rete clent Configurazione di rete clent Configurazione di rete di SQL Server Configurazione di rete di SQL Server Gestione servizi Gestione servizi Importazione ed esportazione dati Importazione ed esportazione dati Profiler Profiler Query Analyzer Query Analyzer Enterprise Manager Enterprise Manager

18 Creazione di un database Nome Nome Lingua Lingua File dati e dimensioni File dati e dimensioni File log e dimensioni File log e dimensioni Opzioni Opzioni

19 Creazione di una tabella Nome Nome Colonne Colonne Chiavi Chiavi Relazioni Relazioni Indici Indici Vincoli Vincoli

20 Le viste logiche Visualizzazione parziale delle colonne di una tabella Visualizzazione parziale delle colonne di una tabella Visualizzazione parziale delle righe di una tabella Visualizzazione parziale delle righe di una tabella Aggiunta, modifica o mascheratura di colonne di una tabella Aggiunta, modifica o mascheratura di colonne di una tabella Visualizzazione di colonne di differenti tabelle Visualizzazione di colonne di differenti tabelle

21 Creazione di una vista Nome Nome Tabelle Tabelle Colonne Colonne Relazioni Relazioni Restrizioni Restrizioni

22 Creazione di una vista: la sintassi T-SQL CREATE VIEW VW_Assegni (Code,[...]DataEmissione)ASSELECTA.Code,[...]A.DataEmissione FROM Assegni AS A […]

23 Gestione di un database Backup e restore Backup e restore Import ed export di dati Import ed export di dati Compattazione degli spazi Compattazione degli spazi

24 Backup e restore Salvataggio e ripristino di informazioni Salvataggio e ripristino di informazioni Salvataggio e ripristino di codice sorgente Salvataggio e ripristino di codice sorgente Trasporto di informazioni Trasporto di informazioni Trasporto di dati e logiche Trasporto di dati e logiche

25 Importazione ed esportazione di dati Importazione di dati da diverse fonti Importazione di dati da diverse fonti Creazione di strutture atte allaccoglimento dei dati Creazione di strutture atte allaccoglimento dei dati Esportazione di dati per usi diversi (file di testo, ecc.) Esportazione di dati per usi diversi (file di testo, ecc.) Schedulazione delle operazioni Schedulazione delle operazioni

26 Compattazione degli spazi Politiche di allocazione degli spazi Politiche di allocazione degli spazi … e se svuoto il database? … e se svuoto il database? Compattazione degli spazi allocati Compattazione degli spazi allocati

27 Parte Quarta Il linguaggio Transact-SQL

28 SELECT Colonne Colonne Clausola INTO Clausola INTO Clausola FROM Clausola FROM Clausola WHERE Clausola WHERE Operatori e funzioni Operatori e funzioni COUNT COUNT DISTINCT DISTINCT SUM SUM MAX MAX …

29 SELECT – Clausole avanzate JOIN JOIN UNION UNION GROUP BY GROUP BY ORDER BY ORDER BY

30 INSERT Tabella Tabella Colonne Colonne Valori Valori

31 UPDATE Tabella Tabella Colonne Colonne Valori Valori Condizioni Condizioni

32 DELETE Tabella Tabella Condizioni Condizioni

33 Le stored procedure Interfaccia di accesso al database Interfaccia di accesso al database Facilitazione di utilizzo per lutente Facilitazione di utilizzo per lutente Gestione delle variazioni della base dati Gestione delle variazioni della base dati Logiche di estrazione delle informazioni Logiche di estrazione delle informazioni Miglioramento delle prestazioni Miglioramento delle prestazioni Perché una SP?

34 SP: La sintassi CREATE PROCEDURE VARCHAR (15) AS[…]GO

35 Le Function Logiche di presentazione dei dati personalizzate Logiche di presentazione dei dati personalizzate NON moltiplicazione del codice NON moltiplicazione del codice Superamento delle problematiche di regional settings Superamento delle problematiche di regional settings Perché le Function?

36 Function: La sintassi CREATE FUNCTION Esempio RETURNS VARCHAR(20) ASBEGIN[…] ENDGO

37 I trigger Automazione di procedure di controllo Automazione di procedure di controllo Automazione di procedure collegate Automazione di procedure collegate Gestione di integrità interne o esterne Gestione di integrità interne o esterne Aggancio di strati applicativi esterni a SQL Server Aggancio di strati applicativi esterni a SQL Server Perché i trigger?

38 Trigger: Le tipologie Trigger classici Trigger classici FOR INSERT FOR INSERT FOR UPDATE FOR UPDATE FOR DELETE FOR DELETE Trigger INSTED OF Trigger INSTED OF Trigger con COLUMNS_UPDATED Trigger con COLUMNS_UPDATED Trigger con IF UPDATE Trigger con IF UPDATE

39 Trigger: La sintassi CREATE TRIGGER Esempio ON TabellaEsempio FOR DELETE, INSERT, UPDATE ASBEGIN[…]ENDGO


Scaricare ppt "Corso base Lorenzo Braidi Formazione e consulenza informatica"

Presentazioni simili


Annunci Google