Publications
Free ebook: Introducing Microsoft SQL Server 2008 R2
In occasione del PASS European Conference 2010, che si sta svolgendo proprio in questi giorni a Neuss in Germania, verrà ufficialmente lanciata la versione R2 di SQL Server 2008.
Sul blog MSDN è disponibile, per il download gratuito, l’ebook “Introducing Microsoft SQL Server 2008 R2” [link].
Lo scopo di questo libro introduttivo è quello di illustrare le nuove caratteristiche della versione 2 (R2) di SQL Server 2008.
Performance Monitoring and Tuning: Webcasts download
SQLWorkShop ha reso disponibili, per il download, nuovi webcasts.
In questa terza serie, di tre webcast (livello 400) che si sommano ai sei precedenti, vengono approfondite le tecniche per eseguire Tuning e Performance Monitoring con SQL Server.
Download gratuito a partire da questo link: http://webcasts2.sqlworkshops.com/webcasts.asp
24 Hours of PASS Is Back!
Visto il successo riscontrato nella precedente edizione, anche quest’anno, la più importante conferenza mondiale su SQL Server e la Business Intelligence – PASS Summit 2010 – verrà anticipata dall’evento on line 24 Hours of PASS.
Si tratta del più lungo webcast gratuito su SQL Server & BI erogato on line, che in questa edizione avrà un focus particolare sulla versione R2 di SQL Server 2008.
MERGE Statements in Action
SQL Server 2008 introduce il supporto al comando MERGE. Questo comando permette di specificare una tabella sorgente (source) ed una tabella destinazione (target o destination), modificando il contenuto della tabella destinazione con i dati della tabella sorgente.
Potranno essere eseguite operazioni DML multiple (INSERT/UPDATE/DELETE) in funzione delle condizioni logiche specificate nelle clausole del comando. SQL Server implementa tutte le caratteristiche del comando MERGE standard ANSI e aggiunge alcune importanti estensioni disponibili solo nel linguaggio T-SQL.
Bill Of Materials problem (part three: using HIERARCHYID data type)
Nell’articolo Recursive CTE and Bill Of Materials problem abbiamo largamente parlato delle tecnologie che SQL Server mette a disposizione per ottenere l’esplosione scalare di una distinta materiali, ossia per risolvere il problema noto come “The Bill Of Materials problem”.
Successivamente, nell’articolo Recursive CTEs and Bill Of Materials problem (part two: cyclic references) , per la stessa distinta materiali, abbiamo illustrato una soluzione in grado d’individuare riferimenti ciclici (nei dati) con prestazioni ragionevoli. Per rilevare i riferimenti ciclici abbiamo utilizzato una CTE ricorsiva in cui viene calcolato dinamicamente il path di ogni elemento. Nella SELECT ricorsiva abbiamo utilizzato il predicato LIKE per verificare che l’ID del sotto insieme (elemento) che si sta elaborando non sia già contenuto nel path composto con i riferimenti univoci (IDs) dei sotto insiemi (elementi) a livello superiore.
SQL Server Training on DMVs
Quest Software, il 3 Marzo 2010, erogherà un training gratuito online per imparare ad utilizzare Dynamic Management Views and Function (DMVs) come strumenti per individuare e risolvere problemi, oltre che per migliorare le prestazioni di SQL Server.
Iscrizione e dettagli a questo link: http://www.vconferenceonline.com/shows/spring10/quest/register/multireg.asp
Recursive CTEs and Bill Of Materials problem (part two: cyclic references)
Nel precedente post Recursive CTE and Bill Of Materials problem abbiamo descritto una CTE ricorsiva nel tentativo di risolvere un problema del mondo reale, ovvero l’esplosione scalare a tutti i livelli della distinta materiali di un prodotto fornito in input.
Prima di realizzare la CTE ricorsiva CTE_BillOfMaterials abbiamo ipotizzato che le distinte materiali memorizzate nelle tabelle Production.BillOfMaterialsHeader e Production.BillOfMaterialsDetail avessero tutte una struttura ad albero aciclica (come è nella realtà). Alcune volte, le ipotesti più credibili non vengono verificate sui dati in produzione, ed è stato così, si è semplicemente assunto che l’ipotesi fosse vera. Durante il deploy della CTE, però, ci siamo accorti che questa ipotesi non era verificata per tutte le distinte memorizzate. Accadeva, di tanto in tanto, che gli utenti lamentassero un errore durante il tentativo di esplodere la distinta di un prodotto. Il seguente errore, che si verificava solo per alcuni prodotti, poteva essere il sintomo di un problema nei dati: