Indexing Best Practices for SQL Server – A Primer

In this article we look at some of crucial indexing best practices for SQL Server

Indexing Best Practices for SQL ServerWhen it comes to efficient indexing in SQL Server Database, the scope for improvement is always there in most implementation. At times much of it is due to confusion amongst users about the process to follow.  In other words, only a few people know what to do and what to avoid while developing SQL indexing that are meant to enhance the query response time. The key is to maintain a balance while developing them. It is important to bear in mind that index is a system managed table and therefore each modification to the data saved in the tables requires updating the indexes as well and failing to do can slow down the overall performance of the database. In this article, you will get to learn the best practices when it comes to SQL Server Indexing.

Indexing Columns of Foreign Key

One of the most essential things to do while indulging in SQL indexing is to index the foreign key columns that are generally not unique, as they are available on many other sides of SQL. In fact, one can see some duplicate foreign key column values in the table while indexing. You must also note that you will be required to generate  a unique index on such foreign key columns when applying a one to one relationship simultaneously between two different tables.

Use Covering Index For Reappearing Queries

Second most important practice while working out with SQL indexes is to use a covering index especially for the reappearing queries in certain columns. You may not know but a covering index is the one that includes the Where and From clauses and when the server is able to scan these indexes, it will save time that will otherwise goes wasted in reading the related data pages; therefore the overall performance enhances using covering indexes.

Indexing Columns of Unique/Primary Key

Another important to do while indexing in SQL server is to never ignore indexing the unique key columns or the primary key columns. One must bear in mind that while declaring the primary key for a table, you are not required to index the primary key by self, as it gets automatically created. On the other hand, it should be noted that if there is another column comprising the unique data, then you will be required to generate a unique index on that column too.

Use Clustered Indexes for Bigger Tables

Another quick tip to use SQL indexes is to consider clustered indexes especially for bigger tables and also for range of value queries. Whether you know or not but a clustered index helps determining the actual storage order of all the records stored on a disk; so using it is indeed very helpful for overall improved performance of the server.

Recovering Indexes after a SQL Crash

If you encounter a SQL crash, you need to ensure that not only are you able to recover your records but indexes to are brought back in perfect shape. To achieve the same you need a powerful sql recovery tool like DataNumen SQL Recovery application. This application is capable of handing an array of SQL issues and can handle severe incidents of MDF corruption with ease. The tool sports a command line interface which comes handy for administrators while running batch recovery operations.

Author Introduction:

Alan Chen is President & Chairman of DataNumen, Inc., which is the world leader in data recovery technologies, including access recovery and sql recovery software products. For more information visit


Leave a Reply

Your email address will not be published. Required fields are marked *