title: Is adding indexes to a SQL Server ever a bad idea?
body: <p>We have a mid-size SQL Server based application that has no indexes defined.  Not even on the the identity columns.  I suggested to our moderately expensive application consultant that perhaps we might get better performance (particularly as our database grows) by creating some indexes on appropriate fields, and he said: </p>
  
  <p>"Indexes will significantly impact other areas of the application and customers should not create them under any circumstances."</p>
  
  <p>Anybody ever heard of anything like this?  Are there ever circumstances where one should <em>not create any indexes</em>?  I can see nothing special about this app - it's got int identity columns, then lots of string columns, bunch of relational tables but nothing special or weird that I can see.</p>
  
  <p>Thanks!</p>
  
  <p>[EDIT:  the identity columns are not using "identity specification", they seem to be set by the program, looking at the database with Management Studio, I can find <em>NO</em> indexes...]</p>
  
  <p>FOLLOWUP:  At a conference I asked the CEO (and chief architect) of the company producing this product about this, his response was that they felt for small to midsize deployments, the overhead associated with maintaining indexes would have more of a negative to overall user experience (the application does a lot of writes) than the benefits of the indexes would offset, but for large databases, they do create indexes.  The tech support guy was just overzealous and very unhelpful with his answer.  Mystery solved.</p>