【发布时间】:2011-11-03 16:12:23
【问题描述】:
mongo 文档指出“当将文档保存到具有唯一索引的集合时,任何缺少的索引键都将插入空值。因此,将无法插入缺少相同索引键的多个文档。 "
那么在可选字段上创建唯一索引是不可能的吗?我是否应该创建一个带有 userId 的复合索引来解决这个问题?在我的具体情况下,我有一个用户集合,其中包含一个可选的嵌入式 oauth 对象。 例如
>db.users.ensureIndex( { "name":1, "oauthConnections.provider" : 1, "oauthConnections.providerId" : 1 } );
我的示例用户
{ name: "Bob"
,pwd: "myPwd"
,oauthConnections [
{
"provider":"Facebook",
"providerId" : "12345",
"key":"blah"
}
,{
"provider":"Twitter",
"providerId" : "67890",
"key":"foo"
}
]
}
【问题讨论】:
标签: mongodb