sql的全文检索更新有几种方式: 完全重建,基于时间戳的增量重建和更改跟踪. 实在不行,使用完全重新来更新.另外你的查询语句是什么?

解决方案 »

  1.   

    我的语句: select iURLid, cURL from tSitemap where containts(cHtml, '江泽民')我认为没问题,
    当该表的行数< 10万 是都正确 
      
      

  2.   

    用LIKE如何?例如:
    select iURLid, cURL from tSitemap where cHtml like '%江泽民%' 
      

  3.   

    ether(void):
       用LIKE如何?例如:
    select iURLid, cURL from tSitemap where cHtml like '%江泽民%'
      是可以, 但她没有利用full text index, 结果将特慢, 要知道啊, 百万条记录啊不过还是谢谢你的参与
    只要参与, 我都会给分  
      

  4.   

    试试:
    select iURLid, cURL from tSitemap where containts(cHtml, '*江泽民*')
      

  5.   

    FREETEXT又如何?
    语法:
    FREETEXT
    (
    {column | * }, 'freetext_string'
    )栗子:
    SELECT iURLid, cURL 
    FROM tSitemap 
    WHERE FREETEXT (cHtml, '江泽民')M$的说法是FREETEXT消耗更少。
      

  6.   

    在query analyzer中query下选中execution plan,看看有没有用上索引。
    或者选中index turning wizard,让sql server 帮你用索引(sql 2000) 
      

  7.   

    试一下选中你的表右键Full Text Index Table菜单下的Start Full Population
    另外保证你的Full Index是采用的Language是中文(中国)
    注:我使用的是Windows 2000 SERVER +SQL SERVER 2000