We all want speed and faster performance in Microsoft Access. As tables get larger, secondary indexes can help speedup queries, searches, and links between tables.
By default, Microsoft Access has a setting that automatically adds secondary indexes on fields based on their name. Unfortunately, this can create additional problems.
By default, Access automatically adds a secondary index to fields that begin or end with these names:
These are set in the options AutoIndex on Import/Create separated by semicolons:
ID;key;code;num
For Microsoft Access 2010 and later, this option is under File, Options, Object Designers:
For Microsoft Access 2007, this option is under the Office button, Access Options, Object Designers:
For Microsoft Access versions before Access 2007, the setting is on the Tables/Queries tab under the Access Tools/Options menu:
Adding too many indexes to a table and duplicating indexes on the same field can hurt performance and increase your database size.
When you import a table with these settings, the indexes are added to your new table automatically. That may be fine for a brand new table, but if you are importing a table to replace an existing table (from a backup) or creating a new database by importing all the tables from an existing database, a whole set of new secondary indexes may be added unnecessarily -- essentially undoing the work you may have done to determine which fields shouldn't have indexes.
If you understand when to add secondary indexes on your tables, you should set the AutoIndex on Import/Create option to nothing. This lets you control where and when indexes are added, and eliminates it from happening by chance:
If you have our Total Access Analyzer program, this setting is one of the ~300 issues detected when your database is documented. Learn more about how Total Access Analyzer can help you create better Microsoft Access applications.
Strategic Overview
Microsoft Access within an Organization's Database Strategy
How many simultaneous Microsoft Access users?
Blaming Microsoft Access instead of the Developer
Microsoft Access Version Feature Differences
Microsoft Access Versions, Service Packs and Updates
Microsoft Office 365 Access Update Version Releases
Top 14 Features Added with MS Access 2007
Taking Over Legacy MS Access Databases
Winner of Every Best Access Add-in Award
Set AutoNumber Starting Number Other than 1
Avoid Unnecessary or Duplicate Indexes
Copy Command Button and Keep Picture
Module VBA to Forms and Controls
Subform Reference to Control Rather than Field
Suppress Page Headers and Footers on the First Page of Your Report
Annual Monthly Crosstab Columns
Add Buttons to the Quick Access Toolbar
Collapse the Office Ribbon for more space
Avoid Exits in the Body of a Procedure
Send Emails with DoCmd.SendObject
Error Handling and Debugging Techniques
Error Number and Description Reference
Remote Desktop Connection Setup
Terminal Services and RemoteApp Deployment
Missing Package & Deployment Wizard
Remove 'Save to SharePoint Site' Prompt from an Access Database
Class Not Registered Run-time Error -2147221164
Microsoft Access to SQL Server Upsizing Center
When and How to Upsize Access to SQL Server
SQL Server Express Versions and Downloads
Deploying MS Access Linked to SQL Azure
SQL Server Azure Usage and DTU Limits