zoukankan      html  css  js  c++  java
  • SQL Server 全文索引的硬伤

    全文引擎使用全文索引中的信息来编译可快速搜索表中的特定词或词组的全文查询

    全文索引优点:

      1.正确的索引会大大提高数据查询、解决海量数据模糊查询的好方法。

           2.一个表只能建立一个全文索引(但可以对多个字段)。

    全文索引缺点:

    1、存储空间,每个索引都要空间存储
    2、如果非聚集索引很多,一旦聚集索引改变,那么所有非聚集索引都会跟着变。
    3、过多索引会导致优化器优化过程需要评估的组合增多。
    4、每个索引都有统计信息,索引越多统计信息越多。
    5、更新开销,一旦一个数据改变,并且改变的列比较多,可能会引起好几个索引跟着改变。

    全文索引需要注意:

    1. 表中必须有一个唯一性索引,当并不需要是主键。
    2. 一个表中只能有一个全文索引。
    3. 你需要告诉你的脚本你想使用全文索引,如何告诉呢?那就是使用关键字:CONTAINS、FULLTEXT、CONTAINSTABLE、FREETEXTTABLE。例如:SELECT * FROM table_name WHERE CONTAINS(fullText_column,'"search contents*"');需要记住CONTAINS等在不同场景、需求下的用法。
    4. 如果定义了变量作为传入值,那么就要注意是否需要在set字符的时候的前面加入N标识。
    5. 要对表设置全文索引,那就得先对数据库设置了全文索引,这样点击表右键的时候,“全文索引”选项才能用。
    6. 脚本在查找的时候是不区分大小写的。解决办法:SELECT * FROM Table_name WHERE Column_name='A' COLLATE Chinese_PRC_CS_AI;或者SELECT * FROM Table_name WHERE ASCII(Column_name) = ASCII('A');
    坚持就是力量 量变造就质变
  • 相关阅读:
    父级和 子集 controller 之间的通讯
    ui-router(三)controller与template
    ui-router详解(二)ngRoute工具区别
    关于MySql全文索引
    Yii提供的Htmler助手checkboxList可自定义Checkbox输出格式
    添加和删除索引以及如何给中间表添加两个主键
    设置数据库及表的默认字符集
    保存数据的时候报类型错误的原因和解决方案
    金融经济
    YII获取刚插入数据的id主键
  • 原文地址:https://www.cnblogs.com/songxm/p/14676665.html
Copyright © 2011-2022 走看看