Sql Server 2005 Developer Overview Davide Mauri Factory Software

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

© 2010 Colt Telecom Group Limited. All rights reserved. Cloud Computing Lapproccio Colt Dionigi Faccedna.
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
1 Tutto su liceoclassicojesi.it 1° Incontro sulla gestione di liceoclassicojesi.it.
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
Consumare Web Service Andrea Saltarello
Sviluppare workflow per il nuovo 2007 Microsoft Office system e Windows SharePoint Services 3.0 Paolo Pialorsi
Midrange Modernization Conference 1 Scenari evolutivi per le soluzioni basate su AS/400 Walter Poloni Direttore Developer & Platform Evangelism Microsoft.
Luca Bianchi Windows Development Day Bologna 28 gennaio 2005 SQL Server Desktop Engine (MSDE) & SQL Server 2005 Express.
Sql Server 2005 Reporting Services - Sviluppo Franco Perduca Factory Software
ASP.NET – Web Forms Davide Vernole.NET MVP. Di cosa parleremo Introduzione ad ASP.NET ASP.NET, dietro le quinte Componenti principali di una applicazione.
Sql Server 2005 Integration Services - Introduzione Franco Perduca Factory Software
Vincenzo Campanale PM Security & Management System Center, DSI e la Roadmap.
SQL (Standard query language) Istruzioni per la creazione di una tabella: Create table ( tipo, (, [vincoli]) Primary key ( ) CHIVE PRIMARIA Foreign key(
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
JPA Overview della tecnologia. Java Persistence Architecture Definita nella JSR-220 EJB 3.0 ( Tentativo di unificare EJB2.1 con.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Frontespizio Economia Monetaria Anno Accademico
Seam.
Un DataBase Management System (DBMS) relazionale client/server.
Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine.
EJB Enterprise Java Beans B. Pernici. Approccio Java.
Pierluigi Plebani - Politecnico di Milano MAIS Registry URBE (Uddi Registry By Example) WP2 Roma - 25 Novembre 2005.
Programmazione 1 9CFU – TANTE ore
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
1. Conoscere luso delle collezioni in Java Comprendere le principali caratteristiche nelle varie classi di Collection disponibili Saper individuare quali.
Programming with JXTA Hello World Peer discovery Peer Group discovery Creating Peer group Joining a Peer Group.
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
MP/RU 1 Dicembre 2011 ALLEGATO TECNICO Evoluzioni organizzative: organico a tendere - ricollocazioni - Orari TSC.
2000 Prentice Hall, Inc. All rights reserved. 1 Capitolo 6: Classi e astrazione dati 1.Introduzione 2.Definizione delle strutture 3.Accedere ai membri.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
New Features + Improvements Miglioramenti alle Situazioni contabili Distribuzione costi Intragruppo in registrazione fatture di acqusti Varie.
Sequence. CREARE UNA SEQUENCE CREATE SEQUENCE nome [INCREMENT BY n] [START WITH n] [MAXVALUE n | NOMAXVALUE] [MINVALUE n | NOMINVALUE] [CYCLE | NOCYCLE]
FUNZIONI DI GRUPPO Le funzioni di gruppo operano su un set di record restituendo un risultato per il gruppo. AVG ([DISTINCT|ALL] n) media, ignora i valori.
Constraints.
SQL Server 2012 LocalDB.
2 3 4 RISERVATEZZA INTEGRITA DISPONIBILITA 5 6.
Melfi, 1 aprile 2011 – MediaShow 1 Social Network: possibilità di uso consapevole nella didattica Uso, consapevolezza, opportunità, proposte Caterina Policaro.
Attribution-NonCommercial-ShareAlike SQL Server.
Università degli studi di Modena e Reggio Emilia Facoltà di Ingegneria di Modena Corso di Laurea Specialistica in Ingegneria Informatica Analisi e valutazione.
Filtered Index and Statistics Filtered Indexes Sergio Govoni
Innovazioni versione 4 Bari, 17 ottobre Innovazioni versione 4 Il menù dinamico secondo logica operativa Il ruolo dei Ruoli Facilitare la scelta.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ISOIVA (LOCALE) TO ISOIVA (WEB) RIPARTIZIONE INFORMATICA UFFICIO APPLICATIVI AMMINISTRATIVI 13/04/2011 UNIVERSITÀ DEGLI STUDI DI FERRARA 1.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
Fabio Cozzolino Vito Arconzo
3/29/2017 3:05 AM ©2005 Microsoft Corporation. All rights reserved.
Microsoft SQL Server Versioni di Microsoft SQL Server 2005 SQL Server EXPRESS Edition SQL Server MOBILE Edition SQL Server WORGROUP Edition SQL.
Attribution-NonCommercial-ShareAlike Le novità
Attribution-NonCommercial-ShareAlike Le novità
1 Guida per linsegnamento nei corsi per il conseguimento del CERTIFICATO DI IDONEITÀ ALLA GUIDA DEL CICLOMOTORE.
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
Scoprirete che su Office non si può solo contare ma anche sviluppare.
21 marzo 2002 (ri-)Avvisi: Giovedi 28 marzo la lezione e sospesa. Nuovo indirizzo di Spedire messaggi e esercizi solo.
IIS7 Media Services Piergiorgio Malusardi IT Pro Evangelist
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
SQL Server 2005 Sicurezza Davide Mauri Factory Software
La Piattaforma Applicativa
Project Review Novembrer 17th, Project Review Agenda: Project goals User stories – use cases – scenarios Project plan summary Status as of November.
Giovedì 17 Aprile 2008 Heroes {Community} Launch Giovedì 17 Aprile 2008.
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
1 Basi di dati (Sistemi Informativi) Scuola di Dottorato in Scienze Veterinarie per la Salute Animale e la Sicurezza Alimentare a.a Ing. Mauro.
Collection & Generics in Java
Azure: Mobile Services e Notification Hub ANDREA GIUNTA.
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
1 Acceleratori e Reattori Nucleari Saverio Altieri Dipartimento di Fisica Università degli Studi - Pavia
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Transcript della presentazione:

Sql Server 2005 Developer Overview Davide Mauri Factory Software

2 Agenda Introduzione Nuovi ambienti di sviluppo Novità T-SQL SQLCLR XML Web Services Service Broker Integration Services Reporting Services

3 Nuovi Ambienti di Sviluppo

4 Situazione attuale (SQL 2000): Tool di admin e query separati Enterprise Manager, dbmaint.exe Query Analyzer Strumenti separati per il tuning Index Tuning Wizard Profiler Tool di configurazione differenti Client Network Utility Server Network Utility Service Manager

5 Obiettivi dei tools in SQL Server 2005 Indirizzare le problematiche aperte con SQL Server 2000 Scalabilità e produttività prima di tutto Investire in una nuova piattaforma Managed code dappertutto Integrazione tra i vari servizi SQL Server, Analysis Server, DTS, Reporting Server, SQL Server Mobile Edition, Notification Services… Integrazione con Sql Server CE

6 Nuovi Ambienti di Sviluppo SQL Server Management Studio Sostituisce EM e Query Analyzer Elementi chiave Object Explorer Query Editor Dialog Summary View Activity Monitor Help Amministrazione database Attività Workflow in DTS Generazione di T-SQL

7 Nuovi Ambienti di Sviluppo SQL Computer Manager Pensato per il sistemista Supporto per tutti i servizi SQL Server (relational) SQL Server Analysis Services Reporting Services Estensione di Computer Manager MMC-based Utilizza le API di WMI Disponibile anche in SQL Server Express Rimpiazza Client Network Utility, Server Network Utility, SQL Service Manager

8 Nuovi Ambienti di Sviluppo Agent Miglioramenti su performance e scalability Supporto per AS e DTS Alert basati su eventi WMI Sicurezza completamente ridisegnata SQLCMD Rinpiazza osql e isql Estensioni di T-SQL Supporto per la connessione admin dedicata

9 Nuovi Ambienti di Sviluppo SQLiMail Supporto a SMTP e cluster Non richiede ne Outlook ne MAPI Surface Area Configuration Per minimizare i possibili punti di attacco abilitare / disabilitare le feature Reporting Services Configurator Non più necessario editare a mano i file XML

10 Novita T-SQL

11 Novità di T-SQL Nuovi statement Funzioni di Ranking CTE e query ricorsive Nuovi operatori relazionali Gestione degli errori DDL Trigger Snapshot Isolation

12 Nuovi Statement Al posto di stored procedure di sistema nuovi statement: CREATE LOGIN CREATE USER Possibilità di criptare i dati Possibilità di utilizzare certificati digitali insert tab1(id, cardno) values (1, encryptByKey(Key_GUID('fookey'), ' '))

13 Funzioni di Ranking Funzioni row oriented ROW_NUMBER() RANK() DENSE_RANK() NTILE( ) OVER([funzione_partizionamento] ) OVER([funzione_partizionamento] )

14 Clausola TOP In SQL Server 2000: SELECT TOP In SQL Server 2005: SELECT TOP dove può essere una variabile o una sub-query non correlata che ritorna uno scalare supportata anche per i comandi INSERT, UPDATE e DELETE Rimozione parziale supporto clausola ROWCOUNT funziona ancora con SELECT di default è ignorata per UPDATE, DELETE ed INSERT se listanza non è impostata per essere compatibile con la versione 2000

15 Common Table Expression Simile ad una vista ma incorporata nella query WITH YearOrdersCTE (ordertear, numorders) AS ( SELECT YEAR(OrderDate), COUNT(*) FROM Orders GROUP BY YEAR(OrderDate) ) SELECT * FROM YearOrdersCTE WITH YearOrdersCTE (ordertear, numorders) AS ( SELECT YEAR(OrderDate), COUNT(*) FROM Orders GROUP BY YEAR(OrderDate) ) SELECT * FROM YearOrdersCTE

16 Nuovi operatori: PIVOT/UNPIVOT PIVOT: trasforma righe in colonne può effettuare anche aggregazioni utile per scenari OLAP o reportistica NON è dinamico! è necessario sapere il numero di colonne a priori UNPIVOT: trasforma colonne in righe è linverso delloperazione di PIVOT utile per normalizzare dati k1k2c1 1Av1 1Bv2 1Cv3 2Av4 2Bv5 2Cv6 k1ABC 1v1v2v3 2v4v5v6 k1ABC 1v1v2v3 2v4v5v6 k1k2c1 1Av1 1Bv2 1Cv3 2Av4 2Bv5 2Cv6 PIVOT UNPIVOT

17 Gestione degli errori: TRY/CATCH Finalmente: modello TRY/CATCH Se si verifica un errore nel blocco TRY, lesecuzione passa al blocco CATCH Se non si verifica nessun errore, il blocco CATCH viene ignorato Ogni errore che imposta è intercettabile BEGIN TRY INSERT INTO Employees (empid, empname, mgrid) VALUES (1, 'Emp1', NULL) END TRY BEGIN CATCH /* eventuali azioni correttive */ END CATCH BEGIN TRY INSERT INTO Employees (empid, empname, mgrid) VALUES (1, 'Emp1', NULL) END TRY BEGIN CATCH /* eventuali azioni correttive */ END CATCH

18 Gestione errori: informazioni Quattro nuove funzioni nel blocco CATCH: ERROR_NUMBER() ERROR_MESSAGE() ERROR_SEVERITY() ERROR_STATE() Tutte e quattro le funzioni possono essere chiamate più volte e mantengono il valore (non come

19 Scenari di snapshot isolation Business Reportistica e query ad hoc che girano insieme ad attività OLTP Database che normalmente hanno accessi in lettura ma con alcune scritture Migrazione di applicazioni da Oracle® DBA e sviluppatori Aggregazioni consistenti (e.s. AVG, SUM) Join e intersezione di indici senza escalation ad un livello di isolamente più alto Riduzione dei deadlock

20 SQLCLR

21 SQLCLR E possibile utilizzare.Net per scrivere Stored Procedure User Defined Function Aggregates User Defined Data Types Trigger NON E STATO PENSATO PER SOSTITUIRE T-SQL Ma per sostituire le Stored Procedure Estese!

22 Esempio di UDF using System.Data.SqlServer; using System.Data.Sql; public class TestUDF { public static int Cube(int x) { return x*x*x; } csc.exe /t:library /r:sqlaccess.dll /out: TestUDF.dll TestUDF.cs CREATE ASSEMBLY TestUdf FROM TestUdf.dll CREATE FUNCTION int) RETURNS INT AS EXTERNAL NAME TestUDF.[MyNamespace.TestUdf].Cube SELECT dbo. Cube ()

23 XML

24 XML in un Database Relazionale? E lo standard de facto Utilizzato come Lingua Franca Dati trasmessi e ricevuti come XML Sempre più utilizzato I database prima o poi devono cominciare a fare i conti con questa realtà Allora meglio farlo nel modo migliore

25 XML in un Database Relazionale CREATE TABLE xml_tab ( the_id INTEGER, xml_col XML) CREATE PROCEDURE transform XML OUTPUT) AS... CREATE FUNCTION simple NVARCHAR(max)) RETURNS XML AS XML

26 XML in un Database Relazionale Supporto per XML Schema Validations XML Indexes XQuery & XPath 2.0 Casting Memorizzazione interna come BLOB Rappresentazione interna binaria (compressa) XML encoding trasformato in UTF-16

27 XML in un Database Relazionale CREATE TABLE xml_tab ( the_id INTEGER, xml_col XML) GO -- auto conversion INSERT INTO xml_tab VALUES(1, ' ') INSERT INTO xml_tab VALUES(2, N' ') SELECT CAST(xml_col AS VARCHAR(MAX)) FROM xml_tab WHERE the_id < fails, not well formed INSERT INTO xml_tab VALUES(3, ' ')

28 Typed & Untyped XML E possibile fare in modo che il tipo XML sia validato da un XML Schema Per validare i dati inseriti Per assicurarsi che tutte le entità abbiano la stessa struttura Definizione dei tipi di dati utilizzati

29 XML Indexes Ottimizzano le query sulle colonne XML Due tipi Primary Secondary Necessaria la presenza di un indice cluster sulla primary key della tabella CREATE TABLE xml_tab ( id integer primary key, doc xml) GO CREATE PRIMARY XML INDEX xml_idx on xml_tab (doc) GO

30 XQuery XQuery è levoluzione di XPath Più correttamente è un SuperSet Supporto di un subset di XQuery implementazione basata sul draft Novembre Permette di poter fare query su dati semistrutturati e/o destrutturati XML

31 xml.value() -- insert some rows INSERT xml_tab VALUES(' ') INSERT xml_tab VALUES(' ') INSERT xml_tab VALUES(' ') -- this query SELECT id, AS name FROM xml_tab -- yields this resultset id name alessandro 2 davide 3 franco

32 Web Services

33 Web Services Architettura per ottenere interoperatività tra sistemi (anche eterogenei) XML come supporto protocolli standard numerose specifiche per soddisfare le varie esigenze Stanno diventando il modello di integrazione de facto supportati da tutti i linguaggi e da tutte le piattaforme

34 Web Services e SQL Server Solo TDS a volte può essere limitante per i client necessita di librerie apposite ADO.NET OLEDB / ODBC JDBC FreeTDS Web Services HTTP/XML: tutti i client li supportano

35 Web Services e SQL Server Necessità non nuova Con Sql 2000: SQLXML Meglio far si che sia direttamente SQL a mettere a disposizione linfrastruttura meno strati più integrata più sicura più veloce

36 Web Services e SQL Server

37 Web Services e SQL Server Utilizzo dellHTTP Kernel Protocol Stack Necessario Windows Server 2003 (o XP SP2) Supporto per SSL Funzionamento senza necessità di utilizzare IIS

38 Typical web service configuration CREATE ENDPOINT Accounting STATE = STARTED AS HTTP ( SITE = ' PATH = '/nwind', AUTHENTICATION = (INTEGRATED), PORTS = (CLEAR), RESTRICT_IP = NONE, EXCEPT_IP = ( , ) ) FOR SOAP ( WEBMETHOD ' (name='Northwind.dbo.GetCustInfo', schema=STANDARD ), WSDL = DEFAULT, BATCHES = ENABLED, DATABASE = 'northwind', NAMESPACE = ' ) GO

39 Service Broker

40 Cosè il Service Broker? Piattaforma per la creazione di applicazioni asincrone basate sulluso di messaggi Facilita lo sviluppo di applicazioni Loosely Coupled Completamente gestito tramite TSQL Basato sul concetto di coda

41 Cosè il Service Broker? Affidabile Garantisce linvio e la ricezione dei messaggi Transazionale Exactly once message processing Utilizzabile su più instanze di Sql Server

42 Service Broker Elements Messages Contracts Queues Services

43 Integration Services

44 Integration Services Successore dei DTS COMPLETAMENTE riscritto Bastato sul.NET Framwork MOLTO MOLTO più potente e flessibile

45 Integration Services BI Development Studio Praticamente è Visual Studio Designer molto più ordinato tramite lutilizzo di aree tematiche Supporto per sistemi di gestione del codice Visual SourceSafe Migliorate le capacità di debugging

46 Integration Services Molti elementi permettono lutilizzo di un Linguaggio interno: DTS Expressions Possibilità di creare workflow molto complessi Possibilità di gestire gli eventi (es. OnError) Programmabili ed estendibili con.NET

47 Reporting Services

48 Overview MS Reporting Services (SSRS) è una piattaforma per la creazione e la gestione di report Per applicazioni connesse E basato su tecnologie standard HTTP, XML e Web Services.NET SQL Server Fornisce tool per: sviluppo amministrazione consultazione E completamente estendibile e personalizzabile

49 Features principali Sorgenti dati Relazionali Multidimensionali Xml Report Tabulari A Matrice (Pivot) Free-form

50 Features principali Report Interattivi Drill through Report Parametrici Supporto per query dinamiche Navigabilità Anchor Treeview Calendar

51 Features principali Elementi Grafici Immagini Charts Aggregazione dei dati Totali / Subtotali / Avg Render multiformato Html / PDF / Excel Printer

52 Features principali Rich Client Printing Stampa senza necessità di esportare Download di un controllo ActiveX sul client Supporto per Page Layout Preview

53 Features principali Configurazione tramite tool Report Service Configuration Manager

54 Domande ?

© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.