前回同様面倒くさくなったのでストアド化させたw   
カタログの削除・生成とインデックスの削除・生成用のサンプルとして。
     /*       
特定のテーブルにおけるフルテキストインデックス、フルテキストカタログを再作成する        
*/        
ALTER PROCEDURE CREATE_FULLTEXTCATALOG(@tableName NVARCHAR(MAX))      
AS       
BEGIN 
      DECLARE @CRLF NVARCHAR(2);      
  SET @CRLF = CHAR(13) + CHAR(10); 
      DECLARE @INDEXCOUNT     INT;      
  DECLARE @DBNAME         NVARCHAR(MAX);      
  DECLARE @CATALOGNAME    NVARCHAR(MAX);      
  DECLARE @COLUMNTYPE     INT;      
  DECLARE @COLUMNNAME     NVARCHAR(MAX);      
  DECLARE @INDEXNAME      NVARCHAR(MAX);      
  DECLARE @PRIMARYKEYNAME NVARCHAR(MAX);      
  DECLARE @TARGETCOLUMN   NVARCHAR(MAX);      
  DECLARE @EXECUTESQL     NVARCHAR(MAX); 
      --実行データベース名を取得       
  SET @DBNAME = DB_NAME(); 
      --フルテキストカタログ取得       
  DECLARE CUR_CATALOG CURSOR LOCAL FORWARD_ONLY FOR       
    SELECT        
      SFC.NAME CATALOGNAME      
    FROM      
      SYS.FULLTEXT_CATALOGS SFC      
        INNER JOIN SYS.FULLTEXT_INDEXES SFI ON (SFC.FULLTEXT_CATALOG_ID = SFI.FULLTEXT_CATALOG_ID)      
          INNER JOIN  SYS.TABLES STS ON (SFI.OBJECT_ID = STS.OBJECT_ID)      
    WHERE      
      STS.NAME = @tableName; 
      --対象テーブルのフルテキスト対象項目取得       
  DECLARE CUR_TABLE CURSOR LOCAL FORWARD_ONLY FOR       
    SELECT        
      SC.SYSTEM_TYPE_ID,      
      SC.NAME      
    FROM       
      SYS.COLUMNS SC      
        INNER JOIN SYS.TABLES STS ON (SC.OBJECT_ID = STS.OBJECT_ID)      
    WHERE       
      STS.NAME      = @tableName AND      
      SC.MAX_LENGTH = -1; 
      --対象テーブルのプライマリキー取得       
  SET @PRIMARYKEYNAME = '';      
  SELECT      
    @PRIMARYKEYNAME = SI.NAME      
  FROM      
    SYS.TABLES ST      
      INNER JOIN SYS.INDEXES SI ON (ST.OBJECT_ID = SI.OBJECT_ID)  
  WHERE      
    ST.NAME = @tableName AND      
    SI.TYPE = 1; 
      --既存フルテキストインデックスの削除      
    SELECT      
      @INDEXCOUNT = COUNT(*)      
    FROM      
      SYS.FULLTEXT_INDEXES SFI      
        INNER JOIN SYS.TABLES STS ON (SFI.OBJECT_ID = STS.OBJECT_ID)      
    WHERE      
      STS.NAME = @tableName; 
        IF @INDEXCOUNT > 0      
      BEGIN       
        SET @EXECUTESQL = 'DROP FULLTEXT INDEX ON ' + @tableName;      
        EXECUTE (@EXECUTESQL);      
        PRINT @EXECUTESQL + @CRLF;      
      END; 
      --既存のフルテキストカタログの削除      
  OPEN CUR_CATALOG;      
  FETCH NEXT FROM CUR_CATALOG INTO @CATALOGNAME;      
  WHILE (@@FETCH_STATUS = 0)      
    BEGIN       
      SET @EXECUTESQL = 'DROP FULLTEXT CATALOG ' + @CATALOGNAME;      
      EXECUTE (@EXECUTESQL);      
      PRINT @EXECUTESQL + @CRLF; 
          FETCH NEXT FROM CUR_CATALOG INTO @CATALOGNAME;      
    END;      
  CLOSE CUR_CATALOG;      
  DEALLOCATE CUR_CATALOG; 
      --フルテキストカタログの新規作成      
  SET @EXECUTESQL = 'CREATE FULLTEXT CATALOG FTC_' + @DBNAME + '_' + @tableName;      
  EXECUTE (@EXECUTESQL);      
  PRINT @EXECUTESQL + @CRLF; 
      --フルテキストインデックスの新規作成      
  SET @TARGETCOLUMN = '';      
  OPEN CUR_TABLE;      
  FETCH NEXT FROM CUR_TABLE INTO @COLUMNTYPE, @COLUMNNAME;      
  WHILE (@@FETCH_STATUS = 0)      
    BEGIN       
      IF @TARGETCOLUMN <> ''       
        SET @TARGETCOLUMN = @TARGETCOLUMN + ', ';      
      SET @TARGETCOLUMN = @TARGETCOLUMN + @COLUMNNAME + ' ';      
      IF @COLUMNTYPE <> 231      
        SET @TARGETCOLUMN = @TARGETCOLUMN + 'TYPE COLUMN EXTENSION '; 
          SET @TARGETCOLUMN = @TARGETCOLUMN + ' LANGUAGE Japanese'; 
          FETCH NEXT FROM CUR_TABLE INTO @COLUMNTYPE, @COLUMNNAME;      
    END;       
  CLOSE CUR_TABLE;      
  DEALLOCATE CUR_TABLE;      
  SET @EXECUTESQL = 'CREATE FULLTEXT INDEX ON ' + @tableName + '(' + @TARGETCOLUMN + ')' + @CRLF      
                  + ' KEY INDEX ' + @PRIMARYKEYNAME + @CRLF      
                  + ' ON FTC_' + @DBNAME + '_' + @tableName + @CRLF      
                  + ' WITH CHANGE_TRACKING AUTO' + @CRLF;      
  EXECUTE (@EXECUTESQL);      
  PRINT @EXECUTESQL + @CRLF; 
      PRINT 'フルテキストカタログ、インデックスの生成を行いました。ログのダンプを行った後に有効となります。'; 
    END;