August 24, 2010

Change an Existing Index in SQL Server

With SQL Server, you can use the DROP_EXISTING clause to rebuild the index, add or drop columns, modify options, modify column sort order, or change the partition scheme or filegroup. Let us see how to rebuild the index and then add a column to an existing index

Drop and recreate an existing non-clustered index without changing the index definition

CREATE NONCLUSTERED INDEX Idx_TableName_SomeColumnID ON
TableName (SomeColumnID ASC)
WITH (DROP_EXISTING = ON)
GO


Rebuild an existing non-clustered index and adding a new column to the existing index

CREATE NONCLUSTERED INDEX Idx_TableName_SomeID ON
TableName (SomeOtherColumn, SomeColumnID ASC)
WITH (DROP_EXISTING = ON)
GO


Read more on the DROP_EXISTING clause (search DROP_EXISTING on the page)


About The Author

Suprotim Agarwal, ASP.NET Architecture MVP works as an Architect Consultant and provides consultancy on how to design and develop Web applications.

Suprotim is also the founder and primary contributor to DevCurry, DotNetCurry and SQLServerCurry. He has also written an EBook 51 Recipes using jQuery with ASP.NET Controls.

Follow him on twitter @suprotimagarwal

No comments: