【问题标题】:Create case sensitive index with mongoDB?使用 mongoDB 创建区分大小写的索引?
【发布时间】:2017-12-01 23:05:10
【问题描述】:

我正在尝试使用 mongoDB 3.4 版创建区分大小写的索引?我正在使用以下查询来创建索引,但它仍然允许我插入不同大小写的数据?

db.Test.createIndex( { "type" : 1 },{ unique: true , collation: { locale: 'en' ,caseLevel:true ,strength: 3 } } )

在上面的查询中,我将 Type 设为唯一。首先,我将“apple”插入数据库,当我尝试“apple”时,它会引发重复错误。但是当我尝试插入“Apple”时,它允许我插入。对我来说,在插入“Apple”时它应该会引发重复错误。

【问题讨论】:

  • 嗯,option"collation" 这个词的下面,它基本上与唯一性没有任何关系,只是用于“排序”。如果还不够清楚。没有办法使索引在 case 上“唯一”。 MongoDB 不支持。这取决于你。那里的链接都指向手册和“排序规则”的英文定义,其中不理解。
  • 另见问题创建功能实际地址jira.mongodb.org/browse/SERVER-90
  • 也供参考:因此,这个问题的所有答案都不正确:stackoverflow.com/questions/33736192/… 并且都误解了函数。

标签: mongodb indexing collation


【解决方案1】:

力量2会起作用

db.Test.createIndex({  
   type:1
},
{  
   collation:{  
      locale:"en",
      strength:2
   },
   unique:true
}));

【讨论】:

    猜你喜欢
    • 2018-07-25
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 2012-12-26
    • 2015-10-23
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    相关资源
    最近更新 更多