索引的名字
集合中每个索引都有一个字符串类型的名字,来唯一标识索引。 服务器通过名字来操作或者删除索引。 要注意的是,索引名有字符个数限制,所以索引创建时一定要用自定义的名字,如
db.user.ensureIndex({"username":1,.......,"date":1},{"name":"XXXX"})
一旦创建索引不成功,可以用getLastError来查看错误提示。
唯一索引
唯一索引可以确保集合的每一个文档的指定键都有唯一值。
db.user.ensureIndex({"username":1},{"uniquer":true})
注意
insert不会检查文档是否插入过了,所以为了避免插入的文档中有与唯一键重复的值,要用安全插入才能满足。
其实_id 是我们最熟悉的唯一索引,它在集合创建时产生,只不过它不能删除!