• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 120
  • Last Modified:

SQL 2012 create index "incorrect syntax near 'INCLUDE'"

A consultant created me a script to add some indexes, in it, it has a line like so

--sp_helpindex 'tmfWork_HAI'
CREATE NONCLUSTERED INDEX [IX_CreateDate_WI]
      ON [dbo].[tmfWork_HAI]
(
      CreateDate
INCLUDE
(
      WorkOrderKey
);
GO

It generates this error:  
Msg 102, Level 15, State 1, Line 9
Incorrect syntax near 'INCLUDE'.

any idea why?
0
Eric
Asked:
Eric
  • 3
  • 2
1 Solution
 
Vitor MontalvãoMSSQL Senior EngineerCommented:
It's missing a close parenthesis after CreateDate:
CREATE NONCLUSTERED INDEX [IX_CreateDate_WI]
       ON [dbo].[tmfWork_HAI] (CreateDate)
 INCLUDE  (WorkOrderKey);

Open in new window

0
 
EricIT ManagerAuthor Commented:
that was it. thanks
0
 
Scott PletcherSenior DBACommented:
Fyi, your consultant left out the critical WITH clause to explicitly specify at least FILLFACTOR, and to specify the filegroup to create the index on.
1
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
EricIT ManagerAuthor Commented:
hmm.  I have no idea the signfiicance of that. I am a infrastructure guy not SQL guy.

The script has like 30 index creations. Most are more simple than the one above and just look like:

--sp_helpindex 'tsrSR'
CREATE NONCLUSTERED INDEX [IX_ShipToAddrKey]
      ON [dbo].[tsrSR]
(
      ShipToAddrKey
);
GO

Did did a 24 hour analysis of our db performance and came back with a list of suggestions.  One of the suggestions was this list of 30 indexes.  (he also recommended removing a handful)
0
 
Scott PletcherSenior DBACommented:
He might be right on the indexes overall, but he's not really thorough and/or knowledgeable if he didn't also specify an explicit FILLFACTOR.  As a DBA, I would never accept a default FILLFACTOR.
1
 
EricIT ManagerAuthor Commented:
thanks for the heads up
0

Featured Post

Restore individual SQL databases with ease

Veeam Explorer for Microsoft SQL Server delivers an easy-to-use, wizard-driven interface for restoring your databases from a backup. No expert SQL background required. Web interface provides a complete view of all available SQL databases to simplify the recovery of lost database

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now