Bit a bit, si cresce sempre


Blog di un ingeformatico
Statistiche
  • Views Home Page: 489.345
  • Views Posts: 1.565.664
  • Views Gallerie: 738.784
  • n° Posts: 520
  • n° Commenti: 301
Ora e Data
Archivio Posts
Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

Anno 2005

Recensione libro: Microsoft SQL Server 2005 Passo per Passo - Tecniche avanzate

Questo libro rappresenta la seconda parte di una serie di due testi, il primo dei quali (denominato “Le Basi”) è già stato pubblicato dalla Mondadori Informatica lo scorso novembre. Lo scopo è di condurre il lettore, già impratichitosi con i concetti fondamentali (cosa è una base dati, come si interroga, come si modifica, come si amministra, ecc.) portandolo ad un maggiore livello di conoscenza, in particolare in alcuni campi critici quali possono essere le transazioni, le protezioni, e tutti quegli argomenti avanzati che non hanno trovato posto nel primo libro. Si da’ quindi per assodato che l’utente non sia alle prime armi, e conosca già SQL Server 2005 e T-SQL. A differenza del primo testo, questo può essere letto (e studiato) secondo le proprie esigenze e necessità, senza dover per forza seguire l’ordine dei capitoli.

Si inizia parlando dei tipi di dato XML, e come è meglio conservare le informazioni nel database. La trattazione, a questo livello, è abbastanza discorsiva e con pochi esempi. Il secondo capitolo tratta poi il nevralgico concetto della protezione dei dati e della sicurezza. Gli esempi aumentano, e sono tutti facilmente rintracciabili sul codice scaricabile dal sito (e tutti funzionanti, perlomeno tra quelli che ho testato, una buona parte del totale). I commenti nel codice, però, non sono tradotti. Si passa poi ad affrontare argomenti altrettanto importanti, come attuare una efficace strategia di backup (capitoli 3 e 4), fino ad arrivare alla seconda parte dove si entra nel dettaglio delle funzionalità meno conosciute ed usate del T-SQL.

Come si vede si spazia sia nel campo della pura “amministrazione” (tipica attività da DBA), sia nel campo “sviluppo”, e questo allarga di molto l’audience di possibili lettori. Inoltre, soprattutto per quanto riguarda gli aspetti di amministrazione, la teoria viene messa in pratica si utilizzando puro codice T-SQL, sia facendo uso del SQL Server Management Studio.

Il settimo capitolo tratta l’utilizzo delle informazioni presente nel catalogo di sistema “Information_schema”, la costruzione di query dinamiche, ovvero create in base all’input dell’utente, e la tecnica della SQL-Injection. Per mostrare ciò vengono sviluppati due progetti Win32 in VB.NET che occupano gran parte del capitolo (anche se, personalmente, avrei preferito una spiegazione “puro T-SQL”, dato che non tutti hanno necessità di realizzare forms Windows per sfruttare queste caratteristiche).

Il capitolo 8 è dedicato alla gestione dei linked server e all’utilizzo delle funzioni “openrowset” e “openquery”, nel caso di collegamenti a fonti dati remote su Access, Excel ed Oracle. In questo caso non si sviluppano progetti VB, ma il tutto è fatto tramite T-SQL. Il capitolo successivo tratta uno degli argomenti più “cool”, ovvero come leggere i dati da internet via http tramite gli endpoint. L’argomento è piuttosto avanzato, e necessita discrete conoscenze sistemistiche. La terza parte, comprensiva degli ultimi 4 capitoli, inizia trattando approfonditamente l’importante concetto delle transazioni e dei blocchi, necessari per garantire la coerenza dei dati e l’integrità dei dati. L’utilità di questo capitolo (il decimo) si esplica anche nella quantità di consigli offerti, non solo nella fredda spiegazione delle funzionalità transazionali di SQL Server. L’undicesimo capitolo è dedicato a come tenere traccia delle modifiche effettuate in una tabella per mezzo delle istantanee del database (i cosiddetti “snapshot”, presenti però solo nelle versioni Enterprise o Developer) o tramite delle colonne di controllo. Ho scovato particolari clausole che nemmeno sapevo della loro esistenza. Il bello di questo libro è proprio questo; fornire informazioni non facilmente rintracciabili nei libri classici su questo argomento, dettagli misconosciuti e tecniche poco utilizzate, ma pur utilissime. La traduzione, purtroppo, esonda nel rimpiazzare termini intraducibili, come le tabelle “inserted” e “deleted” che vengono rese con “inserite” ed “eliminate” (pag. 271). Mi piacerebbe che chi traducesse questo tipo di libri, sia in fondo anche un po’ esperto (o perlomeno conoscitore) dell’argomento trattato, e non solo fluente della lingua inglese. Non sempre questo avviene nel mercato italiano, e non è un bene.

Gli ultimi due capitoli (12esimo e 13esimo) riguardano funzionalità di “contorno” di SQL Server, i Reporting e i Notification Services. 

Gli esempi di codice .NET sono tutti in VB (sigh) e le schermate sono state prese dalla versione Developer in italiano. A tal proposito spezzerei una lancia a favore dei testi che mostrano schermate tratte da programmi in lingua originale; negli ambienti di lavoro “seri” (ma direi quasi in tutti) i programmi cosiddetti “server”, tra cui SQL Server 2005 (ma anche Exchange, BizTalk, Sharepoint ecc.) vengono tutti utilizzati nelle loro versioni originali (in inglese) e non si aspettano le loro localizzazioni in italiano. Questo per vari motivi (che non è il caso approfondire qua). Ritrovare le stesse schermate in inglese anche nei manuali che si studiano sarebbe un bel vantaggio, vanificato invece da quei testi – come questo – che utilizzano la versione tradotta.

Fine digressione.

Al termine di ogni capitolo non sono previsti esercizi o domande, ma un breve e schematico riepilogo tabellare.  

Diverse incertezze nella traduzione: da “…eseguire un frase T-SQL dall’applicazione” (invece di “eseguire una query”, o anche “espressione”) a pag. 156 (e altre parti), ad “attaccare in database AdventureWorks” (invece di “collegare” o eseguire l’attach – termine da lasciare nella lingua originale direi) a pag. 151. Capita addirittura di trovare brevi frasi non tradotte (come a pag. 104). Una cura maggiore nella revisione delle bozze non avrebbe guastato.

Ottima l’impaginazione: carattere piccolo (come piace a me), buon uso del grassetto, immagini nella dimensione corretta (non eccessivamente grandi da occupare una pagina intera, ma nemmeno minuscole), codice ben indentato. Rimane soltanto, come da tradizione Mondadori Informatica, una certa rigidezza nella rilegatura, che non consente di tenere aperto il libro sulla scrivania (malgrado non sia molto voluminoso).

Alla pagina http://education.mondadori.it/Libri/SchedaLibro.asp?IdLibro=88-04-54246-2  è presente la scheda del libro, dove è possibile scaricarsi il codice degli esempi (694 KB), ben suddiviso in capitoli.

 

 

Pro

Perfetto complemento per i libri “omnicomprensivi” su SQL Server 2005, questo testo entra nel dettaglio di molti argomenti e funzionalità di uso comune, riportando pratiche poco conosciute e consigli utilissimi per aumentare la propria produttività. Questa utilità si esplica sia nel lato “sviluppo” che nel lato “amministrazione”, ed affrontando anche argomenti poco conosciuti, come i Notification Services. Gli esempi sono chiari, funzionanti e spiegati bene. Ottima l’impaginazione, che dal mio punto di vista rappresenta l’optimum.

 

 

Contro

Gli unici difetti riscontrabili in questo libro sono riconducibili ad una traduzione non ottimale; errori ortografici, frasi non tradotte, oppure eccessivo zelo nel tradurre termini intraducibili.

Per quei lettori che si trovano a proprio agio con la lingua inglese, verrebbe voglia di consigliare la versione non tradotta (Microsoft Press).

 

 

Voto complessivo: 8,5/10

Livello: Intermedio

 

 

Sommario

Introduzione

Parte 1 – Creazione di un database SQL Server per conservare i dati

3 – Cap. 1: Scelta dei dati delle applicazioni da registrare nel database

15 – Cap. 2: Principi di base della protezione dei database

43 – Cap. 3: Tecniche di ripristino d’emergenza per proteggere i database

65 – Cap. 4: Trasferimento del database ad altri utenti  

Parte 2 – Query dei dati da SQL Server

93 – Cap. 5: Calcolo delle funzioni di aggregazione

97 – Cap. 6: Miglioramento delle prestazioni delle query

151 – Cap. 7: Costruzione dinamica delle query

173 – Cap. 8: Come lavorare sui dati da origini remote

195 – Cap. 9: Lettura dei dati di SQL Server da Internet

Parte 3 – Come modificare i dati in SQL Server

225 – Cap. 10: L’utilizzo delle transazioni per fornire l’accesso simultaneo ai database

253 – Cap. 11: Conservazione dei dati di cronologia

275 – Cap. 12: Introduzione ai servizi per i report

309 – Cap. 13: Introduzione ai Notification Services  

339 – Indice analitico

Categoria: Books
martedì, 20 feb 2007 Ore. 11.00

Messaggi collegati


Meteo
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003