MongoDB-CN-Manual
搜索文档…
指定文本索引的名称
在本页面
在MONGODB 4.2中的改变
从4.2版本开始,由于特性兼容性版本设置为**“4.2”或更大,MongoDB删除了最大127字节的索引名长度限制。在以前的版本或特性兼容性版本(fCV)设置为“4.0”**的MongoDB版本中,索引名必须在这个限制之内。
索引的默认名称由与串联的每个索引字段名称组成_text。例如,下面的命令创建一个text上的字段索引contentusers.commentsusers.profiles
索引的默认名称由每个索引字段名和**_text连接起来组成。例如,下面的命令在字段content**、users.commentsusers.profiles上创建一个文本索引:
db.collection.createIndex(
{
content: "text",
"users.comments": "text",
"users.profiles": "text"
}
)
索引的默认名称是:
"content_text_users.comments_text_users.profiles_text"

指定text索引名称

您可以将name选项传递给 db.collection.createIndex()方法:
db.collection.createIndex(
{
content: "text",
"users.comments": "text",
"users.profiles": "text"
},
{
name: "MyTextIndex"
}
)

使用索引名称删除text索引

无论是文本索引具有默认名称或指定一个名称为文本索引,删除该文本索引,通过索引名称的db.collection.dropIndex()方法。
例如,考虑以下操作创建的索引:
db.collection.createIndex(
{
content: "text",
"users.comments": "text",
"users.profiles": "text"
},
{
name: "MyTextIndex"
}
)
然后,要删除此文本索引,请将名称传递"MyTextIndex"db.collection.dropIndex()方法,如下所示:
db.collection.dropIndex("MyTextIndex")
若要获取索引的名称,请使用 db.collection.getIndexes()方法。
译者:杨帅