【问题标题】:Does it matter if I index a column > 900 bytes如果我索引一列 > 900 字节,这有关系吗
【发布时间】:2013-09-26 09:04:19
【问题描述】:

所以 SQL 服务器对索引设置了 900 字节的限制。我有需要搜索的 NVARCHAR(1000) 列。不需要对这些列进行全文搜索,因为搜索将始终针对完整值或完整值的前缀进行。我永远不需要搜索位于值的中间/末尾的术语。

相关表的行永远不会根据该索引进行更新,超过 450 个字符的实际值是永远不会搜索的异常值。

鉴于上述情况,是否有任何理由不忽略警告:

索引或主键的总大小不能超过 900 字节

?

【问题讨论】:

  • 存储值的哈希值并使用它来查询表怎么样?
  • @Barry:不会很好地使用前缀搜索。

标签: sql sql-server sql-server-2008 indexing nvarchar


【解决方案1】:

我们不应忽略该警告,因为任何后续的 INSERT 或 UPDATE 语句指定生成超过 900 字节的键值的数据值都会失败。以下链接可能会有所帮助: http://decipherinfosys.wordpress.com/2007/11/06/the-900-byte-index-limitation-in-sql-server/

【讨论】:

    猜你喜欢
    • 2012-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多