SQL Server ed ALM su database


Il blog di Alessandro Alpi
Archivio Posts
Anno 2018

Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

SQL Server 2008 Management Studio - Errori su modifiche indice

Giorni fa ho avuto la necessità di controllare quale fosse l'operazione che SQL Server Management Studio effettua durante l'aggiunta di una colonna su un indice di copertura.
Per chi non lo sapesse, dalla versione 2008, è possibile includere colonne nelle foglie degli indici noncluster, per effettuare una più performante copertura.
Per "indice di copertura" si intende un indice che supporta una particolare query (e ne velocizza tipicamente l'esecuzione riducendo le io e di conseguenza anche il peso) basandosi solo sull'indice, senza andare a toccare l'effettiva tabella su cui l'indice è creato. Per chi volesse approfondire: http://msdn.microsoft.com/en-us/library/ms190806.aspx

Non mi soffermerò sui dettagli del fine tuning annesso a questo tipo di operazione (ma vi consiglio vivamente di farvi una bella cultura su indici e tecniche di fine tuning per velocizzare le vostre query ), perchè volevo invece focalizzarmi su questo piccolo bug trovato per caso. Sono certo che molti di voi l'avranno notato già da tempo, ma siccome non uso spesso i designer, io sono arrivato tardi .

Scenario molto semplice, indice già creato, vado a cambiare le sue colonne dell'inclusione.

premiamo ora il pulsante di creazione dello script di cambiamento..
lo script viene generato su una nuova finestra di Management Studio. Notiamo che l'operazione è una semplice DROP e CREATE dell'indice (non è possibile fare ALTER dell'indice per questo tipo di operazione).
Piccolo problema, se proviamo a salvare la modifica otterremo un errore.

Il fatto è che se non premiamo il pulsante script tutto funziona correttamente.
Insomma, se incontrate questo errore non preoccupatevi, ma sappiate che avete due opzioni:
- lanciate lo script (consigliato, dopo un'attenta analisi)
- rifate tutto senza scriptare le differenze

Giusto per informazione.. 
Non tutti i designer risolvono problemi, usate codice quanto più possibile 

Stay Tuned! 

Categoria: SQL Server 2008
mercoledì, 02 nov 2011 Ore. 10.50

Messaggi collegati


Statistiche
  • Views Home Page: 482.862
  • Views Posts: 870.791
  • Views Gallerie: 500.647
  • n° Posts: 484
  • n° Commenti: 273



















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