declare @index_handle int, @database_id smallint, @object_id int, @equality_columns nvarchar(4000), @inequality_columns nvarchar(4000), @included_columns nvarchar(4000)
declare cIdx cursor for select index_handle, database_id, object_id, equality_columns, inequality_columns, included_columns from sys.dm_db_missing_index_details where database_id=db_id()
open cIdx fetch cIdx into @index_handle, @database_id, @object_id, @equality_columns, @inequality_columns, @included_columns while @@fetch_status=0 begin print 'USE [' + db_name(@database_id)+ ']' print 'go' print 'CREATE NONCLUSTERED INDEX ' + OBJECT_NAME(@object_id) + '_IDX_' + convert(nvarchar,@index_handle) + ' ON ' + OBJECT_NAME(@object_id) print '(' + @equality_columns IF @inequality_columns IS NOT NULL BEGIN PRINT ',' + @inequality_columns END PRINT ')' IF @included_columns IS NOT NULL BEGIN PRINT 'INCLUDE (' + @included_columns + ')' END PRINT 'go' PRINT '' fetch cIdx into @index_handle, @database_id, @object_id, @equality_columns, @inequality_columns, @included_columns end close cIdx deallocate cIdx
|