Sql-Server-2005

Indici doppi: un sovraccarico inutile

Sergio Govoni

Possiamo facilmente immaginare l’inefficienza introdotta dalla doppia indicizzazione (ugualmente ordinata) di un attributo: SQL Server dovrà mantenere aggiornati due indici, organizzati in strutture B-Tree letteralmente identiche, senza trarre alcun beneficio da una delle due.

La stored procedure dbo.usp_drop_double_more_index, definita di seguito, permette di individuare ed eliminare i casi di doppia (tripla, ecc…) indicizzazione dei medesimi attributi.

use [AdventureWorks] go

if object_id(‘usp_drop_double_more_index’) is not null   drop procedure dbo.usp_drop_double_more_index go

create procedure dbo.usp_drop_double_more_index (   @mode tinyint,   @object_name varchar(4000),   @table_type varchar(10),   @index_name_prefix_order varchar(8),   @debug tinyint ) as begin   /*     Descrizione:       Individua ed elimina i casi di doppia (tripla, ecc..)       indicizzazione sui medesimi attributi

Aggiornare una tabella pivot di Microsoft Excel

Sergio Govoni

L’aggiornamento dei dati di una tabella pivot in Microsoft Excel, viene tipicamente configurato per essere eseguito in modo automatico all’apertura del documento stesso. In alcune situazioni, però, potrebbe essere richiesto un aggiornamento automatico ogni X minuti oppure al verificarsi di un determinato evento senza dover necessariamente aprire il file Excel che contiene la tabella pivot.

La stored procedure dbo.USP_DMO_Excel_Pivot_RefreshTable, definita di seguito, utilizza OLE Automation Stored Procedures per aggiornare i dati esposti su una tabella pivot di un determinato file Excel.

SQL Query Stress

Davide Mauri

Un tool free utilissimo per effettuare stress test su SQL Server di una particolare query e quindi verificarne l’ottimizzazione:

http://www.datamanipulation.net/SQLQueryStress/

Molto utile anche per vedere in media l’ìmpatto che ha la creazione di indici, l’utilizzo del profiler e via dicendo sulle query eseguite, simulando anche una situazione di concorrenza, tipica in un database server.