SSMS does not properly script full text catalog creation - by Joel Smith

Status : 

  Fixed<br /><br />
		This item has been fixed in the current or upcoming version of this product.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 241449 Comments
Status Closed Workarounds
Type Bug Repros 0
Opened 11/28/2006 2:31:29 PM
Access Restriction Public


Right clicking on a full text catalog in SSMS and selecting the option to create a script does not properly create the fulltext catalog.

The script is generated with the "CREATE FULLTEXT CATALOG" command but without any "CREATE FULLTEXT INDEX" or "ALTER FULLTEXT INDEX" commands.  Thus the catalog doesn't actually contain any indexes.
Sign in to post a comment.
Posted by Microsoft on 9/7/2007 at 6:57 AM
Thanks for reporting this issue. Your design has been taken care of and SQL Server 2005 SP2 has the ScriptFullTextIndexs scripting option.

Thanks for your feedback and making our product better.

Posted by Microsoft on 12/1/2006 at 11:19 AM
Hi J.
     What you are saying makes sense and represents a poor design. We will look into adding a new Scripting Option to inlcude Full-Text indexes associated with the catalog for a future release of SQL Server. This includes a scripting option from the Full-Text menu. For now, the workaround is to go to the Tools | Options - Scripting page and then scroll down to table options and select "Script full-text indexes". This will script the full-text indexes with the table definition.
Thank you,
Bill Ramos
Posted by Joel Smith on 11/29/2006 at 9:55 AM
How can this be by design? The feature makes no sense.

A create statement should be the exact opposite of the scripted drop. THe drop in this case deletes the full text indexes as well as the catalogs (because indexes are deleted when a catalog is deleted).

Saying it's by design implies that a scripted "create table" via SSMS shouldn't create primary keys or indexes on a table, because these can be scripted seperately - which it does do.

A scripted create should create all child objects in the object being scripted. For instance, scripting a table create should also create the table's normal indexes and primary key, foreign key relationships, etc (as it does). A scripted catalog create should also include scripts to create the indexes it contains, especially since there's no interface to script the fulltext indexes by themselves.

I'll also note that there is no apparent way to script the create of these indexes if they already exist, at least not using SSMS.